Kod içinde yaşayan izinlerin sorunu
Agent framework'leri orkestrasyonda iyidir. Kimlik sistemleri değildir ve sundukları izin modelleri yönetişim kontrolleri değildir. Bir framework'teki araç izin listesi, uygulama kodundaki bir listedir. Agent ile birlikte sürümlenir, agent ile birlikte dağıtılır ve agent'ı çalıştıran runtime tarafından okunur. Kimlik ekibi tarafından görülmez, bir erişim incelemesinde görünmez ve dizin nesneleri üzerinde çalışan bir işe alım-rol değişikliği-ayrılma süreciyle uzlaştırılamaz.
Bu boşluk artık ölçekli olarak test ediliyor. Vanderbilt Üniversitesi'nin kimlik yönetişimini AI agent'larına genişletmesi yararlı bir referans noktasıdır çünkü agent'ları yapılandırma dosyalarına sahip yazılım artefaktları olarak değil, insanlarla aynı yönetişim mekanizmasının özneleri olarak ele alır (SiliconAngle). Ders kurumsal değil yapısaldır: bir aktör veri okuyabiliyor, API çağırabiliyor veya birinin adına hareket edebiliyorsa, dizinin verebileceği, kapsamını belirleyebileceği, inceleyebileceği ve iptal edebileceği bir kimliğe ihtiyacı vardır.
Framework izinleri neden denetimden sağ çıkmaz
Üç başarısızlık modu tekrarlanır.
Birincisi, görünmezlik. Araç izin listeleri ve kapsam dizeleri agent'ın kendi yapılandırmasının içinde yaşar. Kimlik sağlayıcısına bakan bir erişim inceleyicisi, geniş bir yetkiye sahip bir servis hesabı görür ya da agent paylaşılan bir kimlik bilgisiyle kimlik doğruluyorsa hiçbir şey görmez. İnceleyici, agent'ın bir ödeme API'sini, bir biletleme sistemini ve bir belge deposunu çağırabildiğini göremez, çünkü bu ayrıntı inceleyicinin okumadığı bir depodadır.
İkincisi, kullanımdan kaldırma sonrası kalıcılık. Bir agent hizmet dışı bırakıldığında, kimlik bilgileri genellikle ortam değişkenlerinde, gizli anahtar depolarında veya başka bir sistemin hâlâ yüklediği bir yapılandırma dosyasında kalır. Framework yaşam döngüsünde hiçbir şey kaldırılmayı zorlamaz, çünkü framework agent'ın ayrılmış bir sahibi olduğunu veya desteklediği özelliğin kullanımdan kaldırıldığını bilmez. Kimlik bilgisi amacından daha uzun yaşar.
Üçüncüsü, yetki dağınıklığı. Özellikler yayınlandıkça agent'lar kapsam biriktirir. Yeni bir entegrasyon bir kapsam ekler; bir refaktör bir tane daha ekler. Kapsamlar nadiren kaldırılır, çünkü kaldırma hangi kapsamın hangi özelliğe karşılık geldiğini bilmeyi gerektirir ve bu eşleme sürdürülmez. Sonuç, herhangi bir tek görevin gerektirdiğinden daha fazla erişime sahip, süresiz olarak tutulan bir agent'tır.
Dizin-yerel agent kimliği neye benzer
Dizin-yerel bir agent kimliği, insan hesaplarını barındıran aynı dizinde birinci sınıf bir nesnedir. Yönetişimi mümkün kılan niteliklere sahiptir:
- Sahip ve sponsor. Sahip, agent'ın davranışından sorumlu ekiptir. Sponsor, varlığını yetkilendiren insan asıldır. Her ikisi de dizin referanslarıdır, serbest metin alanları değil.
- Bitiş. Kimliğin bir geçerlilik süresi vardır. Varsayılan olarak sonsuza kadar yaşamaz.
- Yetkiler. Kapsamlar dizin yetkileri olarak verilir, agent nesnesine bağlanır ve insan erişimiyle aynı inceleme döngüsünde ortaya çıkar.
- Delegasyon bağlantısı. Agent, adlandırılmış bir asıl adına hareket eder. Bu bağlantı saklanır ve sorgulanabilir, böylece bir denetçi belirli bir eylemin hangi insan otoritesine dayandığını sorabilir.

Bu kozmetik bir değişiklik değildir. Soruyu "bu kod ne yapabilir?"den "bu aktör neye yetkili, bunu kim yetkilendirdi ve bu yetkilendirme ne zaman sona erer?"e taşır.
Framework'lerin ifade edemeyeceği yaşam döngüsü işlemleri
Agent bir dizin nesnesi olduğunda, yaşam döngüsü işlemleri bir framework içinde olmadığı şekilde mümkün hale gelir.
Takvime göre rotasyon ve iptal. Kimlik bilgileri bir dağıtımda değil, bir takvimde döner. İptal, her entegrasyona gönderilmesi gereken bir kod değişikliği değil, dizine güvenen her sistemde etkili olan bir dizin işlemidir.
Otomatik askıya alma. Sahip ekip dağılırsa veya sponsor dizinden ayrılırsa, agent'ın kimliği otomatik olarak askıya alınabilir. Bir framework'ün sponsorun ayrılması diye bir kavramı yoktur, çünkü framework istihdamı veya ekip üyeliğini modellemez.
Onaylama. Periyodik bir insan onayı, agent'ın elinde tuttuğu her kapsama hâlâ ihtiyaç duyduğunu doğrular. Onaylama bir yönetişim ilkelidir: her yetki hakkında bir karar vermeye zorlar ve bu kararı kimin verdiğinin kaydını üretir.
Bunların hiçbiri framework izinleri olarak ifade edilemez, çünkü framework'ün sahip olmadığı dizin durumuna bağlıdırlar.
Somut bir mekanizma: kullanılan kapsam telemetrisiyle yetki eşleme
Bunu uygulamanın pratik bir yolu, en azından başlangıçta, framework uygulama noktası olarak kalırken dizini yetkiler için doğruluk kaynağı olarak ele almaktır.
Veriliş anında dizin, agent kimliğini üretir ve bir dizi yetki verir. Framework, bu yetkileri kodlayan bir token veya kimlik bilgisi alır. Çalışma zamanında framework, hangi yetkilerin gerçekten kullanıldığını kaydeder. Bu telemetri, agent nesnesindeki bir nitelik olarak dizine geri yazılır.
Dizin daha sonra iki görünüm sunar: verilen kapsamlar ve kullanılan kapsamlar. Aralarındaki oran, birincil hijyen metriğidir. On iki kapsama sahip olan ve üçünü kullanan bir agent, azaltma adayıdır. Mekanizma, framework'ün yönetişimi anlamasını gerektirmez; framework'ün kullanımı rapo

Bu kasıtlı olarak sıkıcı bir tasarımdır. Dizini, dizinlerin iyi olduğu şey için kullanır; framework'ü, framework'lerin iyi olduğu şey için kullanır. Zor kısım tesisat değil; oranı inceleme ve buna göre hareket etme disiplinidir.
Bayrak günü olmadan geçiş
Yaygın bir hata, temiz bir geçiş denemektir: verilişi ve uygulamayı aynı anda dizine taşımak. Bu, çalışan sistemleri bozar, çünkü güncellenmemiş uygulama noktaları yeni kimlik bilgisi biçimini reddeder ve taşınan veriliş eski biçimi üretmez.
Daha güvenli sıralamanın üç aşaması vardır.
- Yansıt. Framework düzeyindeki kapsamları okuyun ve karşılık gelen dizin yetkilerini oluşturun. Henüz hiçbir şey uygulanmaz. Amaç, erişim incelemelerine inceleyecek bir şey vermektir.
- Dizinden ver. Framework hâlâ kendi izin listesini uygularken kimlik bilgisi verilişini dizine taşıyın. İkisi anlaşmalıdır; uyuşmazlıklar günlüğe kaydedilir ve uzlaştırılır.
- Dizinden uygula. Veriliş istikrarlı ve yansıma doğru olduğunda, uygulamayı dizin tarafından verilen yetkilere geçirin. Framework'ün izin listesi, kaldırılabilecek gereksiz bir kontrol haline gelir.
Bu sıra önemlidir. Önce veriliş, sonra uygulama. Tersine çevirmek, dizinin hiçbir sisteme verilmemiş yetkileri uygulaması anlamına gelir; bu da kimlik arızaları gibi görünen ama aslında sıralama arızaları olan kesintiler üretir.
Dürüst ödünleşim
Dizin-yerel agent kimliği gecikme ve bağımlılık ekler. Dizin tarafından verilen bir yetkiye bağlı her agent eylemi, dizinin kullanılabilirliğini devralır. Framework-yerel bir izin listesinin böyle bir bağımlılığı yoktur; bellekteki bir listedir. Yönetişimi dizine taşımak, dizinin agent işlemleri için kritik yolda olduğunu ve bir dizin kesintisinin bir agent kesintisi olduğunu kabul etmek anlamına gelir.
Bu ödünleşim genellikle buna değer, çünkü alternatif kimsenin inceleyemeyeceği bir erişim yüzeyidir. Ancak açıkça yapılmalı, bir olay sırasında keşfedilmemelidir. Hafifletme, dizini doğruluk kaynağı olarak terk etmek değil, net iptal semantiklerine sahip önbellekleme ve kısa ömürlü token'lardır.
Ne ölçülmeli
Birincil metrik, agent başına verilen ve kullanılan yetkilerin oranıdır ve takvime göre incelenir. İkincil metrikler, sponsor ayrılışından agent askıya alınmasına kadar geçen süreyi ve bitiş tarihi belirlenmiş agent'ların oranını içerir. Bunlar framework günlükleri değil, dizin sorgularıdır; asıl nokta da budur: yönetişim soruları, uygulama telemetrisinden yeniden oluşturulmak yerine kayıt sisteminden yanıtlanabilmelidir.
Agent kimlik yönetişimi bir agent framework'ünün özelliği değildir. Dizinin bir niteliğidir ve yalnızca dizin agent'ların kullandığı kimlikleri verdiğinde, kapsamlarını belirlediğinde, incelediğinde ve iptal ettiğinde işler.
