Ana içeriğe geç

Uyuyan Bir Agent Hâlâ Bir Principal'dır: Yaşam Döngüsü Kapısı Olarak Kimlik Bilgisi Geri Alımı

Uyuyan agent'lar canlı kimlik bilgilerini korur ve kaynak sınırında aktif olanlardan ayırt edilemez. Hizmetten çıkarma, denetlenebilir bir yaşam döngüsü durumu olmalıdır.

Alacakaranlıkta bulutlu gökyüzüne karşı büyük bir radyo teleskop çanağının yakın çekimi

Önemli olan sayı, etkinlik payı değil

Agent filolarına dair raporlama genellikle bir etkinlik istatistiği olarak gelir: başlık, agent'ların çoğunun uyuyan olduğunu söyler, ancak yine de kimlik bilgilerini ve açık bağlantıları korurlar. Etkinlik rakamı bu cümlenin en az ilginç kısmıdır. Belirleyici olgu, yetki kalıcılığıdır — kimlik bilgileri işin ardından hayatta kalır.

Bu çerçevenin arkasındaki raporlamayı doğrudan okumaya değer (bir anlatım ve bir diğeri). Hiçbiri altta yatan mekanizmayı değiştirmez: aylardır bir tool çağırmamış bir agent, kendisine bir zamanlar verilmiş her downstream servise hâlâ geçerli bir token sunar.

Uyku hâli bir dağıtım artefaktıdır, tasarım kararı değil. Hiç terfi ettirilmemiş prototipler. Mevsimi geçmiş mevsimlik işler. Satıcı değiştiğinde terk edilen entegrasyonlar. Konsolun geçiş yapmaktan kolay kıldığı için yeni bir adla yeniden dağıtılan bir agent'ın yerini almış sürümleri. Bunların hiçbiri kalıcı olmak için tasarlanmamıştı. Pipeline'da hiçbir şey terminal bir durumu zorlamadığı için kalıcı oluyorlar. Oluşturma bir düğme; hizmetten çıkarma bir proje.

Kaynak sınırında — API gateway, veritabanı rolü, SaaS tenant — geçerli token'ı olan boşta bir principal, aktif olandan ayırt edilemez. Token geçerlidir, kapsam mevcuttur, çağrı başarılıdır. İkisini yalnızca yaşam döngüsü kaydı ayırt edebilir ve çoğu filoda bu kayıt, bir makinenin sorgulayabileceği hiçbir biçimde mevcut değildir.

Agent'lar neden service account'lardan farklı çürür

Bir service account genellikle bir platform ekibi tarafından verilen, bir zamanlamayla döndürülen tek kapsamlı tek bir kimlik bilgisidir. Bir agent'ın yetkisi bir bileşimdir ve her öğe kendi saatinde işler:

  • model sağlayıcı anahtarı, çoğu zaman birkaç agent arasında paylaşılır ve bu nedenle hiçbir tek agent için asla döndürülmez;
  • tool kimlik bilgileri — bir veritabanı parolası, bir dahili API anahtarı — build zamanında sağlanır ve deploy zamanında unutulur;
  • kendi son kullanma ve yenileme davranışını taşıyan ve sıklıkla kimsenin envanterini tutmadığı bir token deposunda tutulan downstream OAuth grant'ları;
  • agent'ın bir insan adına hareket ettiği ve o insanın onay anında erişebildiği her şeyi devraldığı delegator kapsamı.

Bu öğeler bağımsız olarak sona erdiği için bileşim neredeyse hiçbir zaman bir bütün olarak sona ermez. Model anahtarı döner, OAuth grant'ı sessizce yenilenir, veritabanı parolası kalır. Agent bakımlı görünür. Değildir: farklı çürüme durumlarındaki bir kimlik bilgileri kümesidir ve hiçbir tek görünüm birleşimi göstermez.

Electrical insulators and components at a power substation under a clear blue sky

İkinci fark kökendir. Agent'lar rutin olarak platform fonksiyonunun dışındaki ekipler tarafından, düşük sürtünme için tasarlanmış konsollar aracılığıyla oluşturulur. Bu, benimseme için doğru tasarımdır ve envanter için yanlış tasarımdır. Principal sayısı sahip sayısından daha hızlı büyür ve bu iki eğri arasındaki boşluk maruziyettir.

Zamanlanmış bir kontrol olarak geri alım

Geri alımı bir temizlik projesi olarak ele almak, tekrarlanacağını garanti eder. Temizlik, başlangıcı ve sonu olan bir olaydır; backlog kapandıktan bir hafta sonra yeniden dolar. Kontrol, varsayılan bir sonucu olan zamanlanmış bir süreç olmalıdır.

Varsayılan sonuç sona ermedir. Her agent sınıfı için — etkileşimli asistanlar, zamanlanmış işler, olay güdümlü yanıtlayıcılar — bir hareketsizlik eşiği tanımlayın ve eşiği, birinin incelemesi için bilet değil, kimlik bilgilerinin otomatik askıya alınmasının tetikleyicisi yapın. Açık eylem yeniden yetkilendirmedir; süregelen yetki, gerekçelendirme gerektiren şeydir. Eşik değerleri her kuruluş için bir politika kararıdır; önemli olan mekanizmadır.

Sahiplik ve amaç ön koşullardır. Bir agent, adlandırılmış bir sahip ve belirtilmiş bir amaç olmadan oluşturulamaz ve her ikisi de hâlâ geçerli olmadan yeniden yetkilendirilemez. Bu, büyük etkisi olan küçük bir şema değişikliğidir: envanter kendi kendini tanımlar hâle gelir ve sahipsiz principal'lar denetimle değil, yapısı gereği kontrolü geçemez.

Kimlik bilgisi ömrü süreç ömründen ayrılır. Bir kimlik bilgisi, agent çalışıyor olsun ya da olmasın kendi zamanlamasıyla sona ermelidir. Sona ermeyi container yaşam döngüsüne bağlamak, durdurulmuş bir sürecin canlı bir sırrı süresiz tutması anlamına gelir — tam da uyku hâli arızası. Her çağrı için verilen kısa ömürlü token'lar ve uzun ömürlü sırrın agent'ın hiç görmediği bir broker'da tutulması, kalıcılığı tamamen ortadan kaldırır.

Geri alım olayları, agent eylemleriyle aynı denetim izine gider. Çoğu denetim günlüğü bir principal'ın ne yaptığını kaydeder. Çok azı yetkinin ne zaman, hangi süreçle, hangi politika sürümü altında geri çekildiğini kaydeder. İz yalnızca kullanımı gösteriyorsa, bir araştırmacı sessiz kalmış bir agent'ı iptal edilmiş bir agent'tan ayırt edemez — ve iptalin gerçekleştiğini hiç kanıtlayamaz.

Minimal bir geri alım kaydı şöyle görünür:

Close-up of disassembled hard drive platters and hardware components

{
  "principal_id": "agent:invoice-recon-v3",
  "event": "credentials_revoked",
  "reason": "inactivity_threshold_exceeded",
  "last_successful_tool_call": "2025-01-14T09:22:07Z",
  "grants_revoked": ["oauth:ledger.read", "db:recon_rw"],
  "owner": "finance-ops",
  "policy_version": "reclamation-v4",
  "reauthorisation_path": "ticket:OPS-2214"
}

Ödünleşim gerçektir ve açıkça belirtilmelidir. Agresif geri alım bir şeyleri bozar. Mevsimlik işler, kimse onları yeniden yetkilendirmediyse mevsimlerinde başarısız olur; bir ortağa verilen prototip demo ortasında durur; nöbetteki bir mühendis akşamını grant'ları yeniden vererek geçirir. Maliyet insanlar tarafından, hemen taşınır ve fayda, görünmez bir şekilde gerçekleşmeyen bir ihlaldir. Bu asimetri, geri alımın otomatikleştirilmediği ve arızaları yüksek sesle ve düzeltmesi ucuz hâle getirilmediği sürece neden çürüdüğünün nedenidir — bir değişiklik danışma kurulu değil, dakikalar süren self-servis bir yeniden yetkilendirme yolu.

Neyin enstrümante edileceği

Önemli olan ölçüm container sağlığı değildir.

Kimlik bilgisi başına son başarılı tool çağrısı, süreç başına son heartbeat değil. Çalışan bir container, canlı bir grant tutarken hiçbir işe yaramıyor olabilir; durdurulmuş bir container aynı grant'ı hiç gözlemlenecek süreç olmadan tutuyor olabilir. Risk birimi kimlik bilgisidir, dolayısıyla ölçüm birimi de kimlik bilgisidir.

Birinci sınıf envanter öğeleri olarak downstream grant'lar, her biri kendi sahibi ve sona ermesiyle, onları tutan agent'a bağlanmış. Bir agent'ın neye erişebildiğini dört sistemi okuyup tahmin etmeden yanıtlamanın tek yolu budur.

Grant kümelerinde sapma uyarıları. İzinleri karşılık gelen bir değişiklik kaydı olmadan değişen bir principal, ya bir yanlış yapılandırmadır ya da bir ihlaldir ve kayıt olmadan ikisi ayırt edilemez. Mutlak kapsam üzerinde değil, delta üzerinde uyarı verin.

Tasarım kuralı

Her agent principal'ı talep üzerine üç soruyu yanıtlayabilmelidir: ona kim sahip, neye erişebilir ve yetkisi ne zaman sona erer. Bir wiki'de değil, onu inşa edenin tuttuğu bir elektronik tabloda değil — kimlik bilgisini veren sistemde, eylemlerini denetleyen aynı araçlarla sorgulanabilir biçimde.

Bu yanıtlardan herhangi biri bir insanın onu bellekten, sohbet geçmişinden veya bir depo aramasından yeniden inşa etmesini gerektiriyorsa, filo beyan edilmemiş risk taşıyor demektir. Uyuyan agent'lar bu kuralın istisnası değildir. Kuralın var olma nedenidirler: hareket etmeyi bırakmış bir agent hâlâ bir principal'dır ve yaşam döngüsü olmayan bir principal, sahibi olmayan bir kimlik bilgisidir.

İlgili okumalar

Bunun yanıtladığı sorular

Why is a dormant agent a security risk if it is not running?

Because its credentials remain valid. At the API gateway or downstream service, a token from an idle agent is indistinguishable from one held by an active agent. The process being stopped does not revoke the grant.

How should inactivity be measured for an agent?

By last successful tool call per credential rather than container heartbeat. A running process may be idle while still holding authority, and a stopped process may hold the same grant with nothing to observe.

What should a reclamation audit record contain?

The principal identifier, the event, the reason, the last successful tool call, the grants revoked, the owner, the policy version and the reauthorisation path — written to the same trail as agent actions so withdrawal of authority is provable.

What is the main cost of automatic credential reclamation?

It breaks things that were quietly depending on stale authority: seasonal jobs, partner demos, prototypes. The benefit is invisible and the cost is immediate, so reclamation needs a fast self-service reauthorisation path to survive.