AI Ajanları Neden Kendi Yetkili Kimliğini Seçmemeli
AI ajanlarında model tarafından üretilen user_id'ler neden güvenilmez? Kimlik, yetki devri ve iş yetkilendirmesinin ayrılması gerektiği anlatılıyor.
Bir AI ajanının ürettiği araç çağrısı şema açısından geçerli olsa bile, arkasında meşru bir kimlik bulunmayabilir. Modelin argümanlara yazdığı bir user_id, kriptografik olarak doğrulanmış bir yetki değil, güvenilmeyen bir metin parçasıdır. Sorun, tek bir çağrıda aslında üç farklı kimliğin -talep eden insan/iş sahibi, ajan istemcisi ve işlemi gerçekleştiren iş öznesi- birbirine karıştırılmasından doğar. Bu ayrım netleşmediğinde kimlik doğrulama, yetki devri ve iş yetkilendirmesi birbirinden ayırt edilemez hale gelir.
Modelin ürettiği kimlik bilgisi; belirsiz kullanıcı ifadeleri, eski konuşma hafızası, prompt injection saldırıları veya basit halüsinasyonlar yüzünden yanlış olabilir. Bu nedenle güvenilir bir işlem öznesi, kimlik doğrulanmış oturumlar, imzalı yetki devri belgeleri veya kurumsal kimlik sağlayıcıları gibi güvenilir sistem sınırlarından türetilmelidir; modelin yorumladığı metinden değil.
Önerilen yaklaşım, model tarafından kontrol edilen argümanları (order_id, amount) güvenilir çağrı bağlamından (subject_id, delegation, tenant_id) ayırmaktır. Ayrıca refund oluşturma veya müşteri verisi dışa aktarma gibi öznesi zorunlu yetenekler, güvenilir bir kimlik yoksa ajana hiç gösterilmemelidir. Görev onaylandıktan sonra yeniden çalıştırılsa bile özne, her kritik adımda yeniden doğrulanmalı; aksi halde önceki onay farklı bir kimliği örtük olarak yetkilendirebilir.
Güvenilir bir özne belirlemek yeterli değildir; bu sadece 'kim adına hareket ediliyor' sorusunu çözer. Çalışanın gerçekten bu iadeyi yapma yetkisi olup olmadığı hâlâ RBAC/ABAC gibi iş yetkilendirme katmanlarınca kontrol edilmelidir. Mühendisler için sonuç açık: kimlik sınırı ile iş mantığı sınırı asla aynı JSON alanına güvenilerek karıştırılmamalıdır.