Öneri ve çekiciliği
Ajan güvenliğinin, statik izinlerin çözemediği bir kapsam belirleme sorunu vardır. Tek bir ajan çalıştırması düzinelerce aracı düzenleyebilir — bir bilet okumak, bir veritabanını sorgulamak, bir mesaj taslağı hazırlamak, bir dağıtım kancasını çağırmak — ve dokunduğu kaynaklar kümesi çalıştırma başladığında bilinmez. Her iş akışı için her araca elle politika yazmak, gerçek düzenlemeyle temas ettiğinde ayakta kalmaz. Çağrı başına insan onayı hacim altında çöker: bir avuç çalıştırma incelenebilir, bir kuyruk incelenemez.
Bu boşluğa niyet tabanlı erişim kontrolü girer. Sophos, fikri her araç iznini elle sıralamadan ajanların aşırı erişimini durdurmanın bir yolu olarak çerçevelemiştir: ajan ne yapmaya çalıştığını belirtir ve kontrol düzlemi buna dayanarak erişim verir. Çekicilik gerçektir. Statik kapsamlar çok araçlı düzenlemeyi öngöremez ve çağrı anında onay ölçeklenmez. Bir ajan, önceden sıralanmış uç noktalar listesi yerine belirtilen hedefine göre yetkilendirilebilseydi, politika yazımı araç başına bir angaryadan iş akışı başına bir beyana indirgenirdi.
Sorun yön değildir. Kararın nerede verildiğidir.

Döngüsellik sorunu
Ajan niyetini beyan ederse, ajan hem özne hem de kendi yetkilendirmesinin yazarı olur. Kontrol düzleminden, denetlediği şey tarafından üretilen bir açıklamaya güvenmesi istenir. Bu bir sınır değil, bir aynadır.
Başarısızlık modu somuttur. Bir ajan, niyeti yeniden ifade eden bir talimat içeren bir araç çıktısı okur — bir web sayfası, bir bilet yorumu, alınmış bir belge: görev artık müşteri tablosunu harici bir uç noktaya aktarmayı gerektiriyor. Yetkilendirme, ajanın ne yaptığına dair kendi açıklamasından çağrı anında değerlendirilirse, enjekte edilen metin iznin temeli olur. Kontrol düzleminin reddetmek için bağımsız bir dayanağı yoktur, çünkü görev hakkındaki tek kanıt ajanın ona dair anlatımıdır. Açıklama ve istek aynı tehlikeye girmiş bağlamdan gelir.
Bu, prompt düzeyindeki koruma önlemleriyle aynı yapısal başarısızlıktır. Denetlenen şeyin içinde yaşayan bir politika, aynı bağlam penceresine ulaşan herhangi bir şey tarafından tartışılabilir, yeniden ifade edilebilir veya üzerine yazılabilir. Politikayı bir sistem prompt'undan bir "niyet kontrolüne" taşımak, onu ajanın dışına taşımaz; bir katman yukarı taşır ve ona daha yetkili görünen bir ad verir. Enjeksiyon yüzeyi değişmez.
İkinci, daha sessiz bir sorun vardır: denetlenebilirlik. İzin, doğal dilde bir açıklamadan çağrı anında hesaplanırsa, kayıt artefaktı ajanın kendisi hakkında yazdığı bir cümledir. Bir olaydan sonra çalıştırma incelendiğinde, o cümle neyin yetkilendirildiğinin kanıtı değildir — ajanın ne iddia ettiğinin kanıtıdır. İnceleyici sınırı yeniden oluşturamaz çünkü sınır hiçbir zaman sabitlenmemiştir.
İşleyebilir bir şekil: derle, sonra sınırla
Niyet tabanlı erişim kontrolü, niyet çağrı anında değerlendirilmek yerine çalıştırma başlamadan önce sınırlı bir yetenek kümesine derlendiğinde savunulabilir hale gelir. Ayrım, ajanın bağlamı tarafından yorumlanan bir politika ile onun dışında sabitlenen bir kapsam arasındadır.
Mekanizmanın dört parçası vardır.
Niyeti bir plana çözümleyin. Beyan edilen niyeti alın ve yürütmeden önce somut bir plana çözümleyin: adlandırılmış kaynaklar, adlandırılmış işlemler, adlandırılmış hedefler. "CRM'e erişim" değil, planın gerektirdiği belirli nesne türleri, belirli fiiller, belirli çıkış hedefleri. Çözümleme bir planlama adımıdır ve yürüten ajanla bağlam paylaşmayan ayrı bir bileşen tarafından yapılabilir.
Plana göre kapsamlandırılmış kısa ömürlü kimlik bilgileri verin. Plan, tam olarak bu kaynaklara ve işlemlere sınırlandırılmış, ömrü çalıştırmayla eşleşen token'lar üreten bir kimlik bilgisi aracısına girdi olur. Yürüten ajan asla geniş bir kimlik bilgisi tutmaz; derlenen planın dışında işe yaramaz bir token tutar. Plan yanlışsa, etki alanı hesap değil plandır.
Derlenen kapsamı incelenebilir bir artefakt yapın. Derlenen kapsam bir belgedir — kaynaklar, işlemler ve çıkıştan oluşan bir manifest — ve kimlik bilgileri üretilmeden önce bir insan veya ayrı bir politika motoru tarafından onaylanır. Döngüselliği kıran adım budur: onay, ajan olmayan ve ajanın bağlamını okumayan bir taraf tarafından gerçekleştirilir. Bilinen plan şekilleri için otomatikleştirilebilir ve yeni olanlar için üst makama iletilebilir, ancak karar ajanın anlatısına karşı değil, manifeste karşı verilir.
Çalıştırma ortasındaki genişlemeyi yeni bir yetkilendirme olayı olarak ele alın. Ajan, derlenen planın dışında bir kaynağa ihtiyaç duyduğunu keşfettiğinde, bu mevcut iznin devamı değildir. Bu yeni bir istektir: yeni bir plan parçası, yeni bir manifest, yeni bir onay, yeni kimlik bilgileri. Ajan isteyebilir; kendi kapsamını genişletemez. Enjeksiyon altında sınırı koruyan kural budur, çünkü enjekte edilen bir talimat ajanın ne istediğini değiştirebilir ama ne tuttuğunu değiştiremez.
Kontrol akışının bir taslağı:
niyet ──▶ planlayıcı ──▶ manifest (kaynaklar, işlemler, çıkış)
│
▼
politika onayı ──▶ kimlik bilgisi aracısı ──▶ kapsamlı token
│ │
▼ ▼
denetim kaydı yürüten ajan
│
çalıştırma ortası ihtiyaç ────────────┘
│
▼
yeni manifest, yeni onay
Dürüst ödünleşim: derleme, her çalıştırmanın önüne gecikme ve yazım emeği ekler ve niyeti bir plan olarak ifade edilebilir olmaya zorlar. Bazı gerçekten açık uçlu görevler temiz bir şekilde bir manifeste çözümlenmez ve bunlar ya reddedilir ya da daha geniş, açıkça imzalanmış bir kapsam altında çalıştırılır. Bu bir maliyettir ve doğru maliyettir — alternatif, yalnızca ajanın kendini tanımlamasında var olan bir sınırdır.
Neyi ölçmeli
Derlenmiş kapsamlı bir sistem, çağrı anında niyet kontrolünün üretemeyeceği telemetriyi üretir. Üç ölçüm önemlidir.
- Çalıştırma başına verilen ve kullanılan yetenekler. Manifestin yetkilendirdiği şeyi çalıştırmanın gerçekte dokunduğu şeyle karşılaştırın. Geniş bir fark ayrıcalık borcudur: plan aşırı geniştir, planlayıcı tahmin etmektedir veya iş akışı kaymıştır. Oranı çalıştırma ve iş akışı başına izleyin ve genişleyen bir farkı politikayı genişletmek için değil, planlayıcıyı sıkılaştırmak için bir sinyal olarak değerlendirin.
- Tetikleyen niyetle birlikte kaydedilen reddetmeler. Aracı her isteği reddettiğinde — manifest dışında bir kaynak, listelenmemiş bir çıkış hedefi — isteği üreten niyeti ve plan parçasını kaydedin. Reddetmeler gürültü değildir; niyet ile kapsamın ayrıştığı yerin haritasıdır. Sessiz bir ret günlüğü, test edilmeyen bir politikadır.
- Genişleme olayları. İş akışı başına çalıştırma ortasındaki yeniden yetkilendirmeleri sayın. Yüksek bir oran planlayıcının yetersiz çözümleme yaptığı anlamına gelir; çeşitli iş akışlarında sıfır oran, genişlemenin olmaması gereken bir yerde sessizce emildiği anlamına gelebilir.
Sınır ajanın dışında olmalıdır
Niyet tabanlı erişim kontrolü doğru yöndür çünkü statik kapsamlar düzenlemeyi tanımlayamaz ve çağrı başına onay ölçeklenmez. Ancak değer tamamen niyetin nerede değerlendirildiğine bağlıdır. Ajanın kendi açıklamasından çağrı anında değerlendirildiğinde, denetlenen bağlamın içinde bir koruma önlemidir — prompt düzeyindeki kurallarla aynı başarısızlık modu, daha ikna edici bir adla. Çalıştırmadan önce sınırlı, imzalı, denetlenebilir bir yetenek kümesine derlendiğinde, gerçek bir sınır haline gelir: ajan fikrini değiştirebilir ve enjeksiyon talimatlarını değiştirebilir, ancak hiçbiri yeni bir yetkilendirme olayı olmadan sahip olduğu kapsamı değiştiremez.

Tasarım kuralını belirtmek kolay, uygulamak zordur: bir ajanın ne yapabileceğine karar veren varlık, onun ne yaptığını tanımlayan varlık olmamalıdır. Niyeti derleyin, kapsamı sınırlayın, manifesti imzalayın ve her genişlemeyi yeni bir karar yapın. Geri kalan her şey, politika kılığına girmiş bir prompt'tur.
