Ana içeriğe geç

Agent Kimliği Bir Giriş Değil, Altyapı İlkelidir

Otonom agent'lar kendi anahtarlarına, kapsamlarına ve denetim izlerine sahip, devredilmiş ve iptal edilebilir makine kimliklerine ihtiyaç duyar — ödünç alınmış kullanıcı oturumlarına değil.

Sığ alan derinliği altında izleri, lehim bağlantılarını ve bileşen işaretlerini gösteren bir devre kartının makro fotoğrafı.

Oturum varsayımı çöküyor

Çoğu agent sistemi, web otomasyonundan miras alınan örtük bir varsayım üzerine kuruludur: agent daha hızlı bir tarayıcıdır. Bir kullanıcı oturumu taşır, aynı cookie'leri sunar ve aynı endpoint'lere ulaşır. Bu varsayım agent yalnızca okuma yaptığı sürece geçerlidir. Agent işlem yapmaya çalıştığı anda çöker.

OAuth bu soruyu yanıtlamaz. Bir access token, bir kaynak sahibinden bir istemci uygulamasına verilen yetkiyi tanımlar. Bir insanın neye rıza gösterdiğini kaydeder, o yetkiyi şu anda hangi otonom sürecin kullandığını değil. Bir kullanıcının aynı hesaba karşı çalışan üç agent'ı olduğunda, token hepsinde aynıdır. Diğerlerini iptal etmeden bir agent'ı iptal etmenin yolu yoktur ve sonradan belirli bir işlemi belirli bir aktöre atfetmenin yolu yoktur.

Eksik olan kimlik doğrulama değil. Eksik olan kimlik.

Devredilmiş bir kimliğin ihtiyaçları

Devredilmiş bir makine kimliği, asılın kontrol düzlemi tarafından belirli bir agent'a verilen ve kendi yaşam döngüsünü taşıyan bir kimlik bilgisidir. Bir kullanıcı oturumunda olmayan üç özelliğe sahiptir.

Asıldan ayrı, kararlı bir tanımlayıcı

Agent'ın kendi anahtar materyaline ve kendi rotasyon takvimine ihtiyacı vardır. Asıl — agent'ın adına hareket ettiği insan veya kuruluş — yetki kökü olarak kalır, ancak agent ayrı bir genel anahtara sahip ayrı bir öznedir. Atfedilmeyi mümkün kılan bu ayrımdır: imzalı bir istek agent'ı adlandırır ve agent'ın anahtarı, asılın kimlik bilgilerini açığa çıkarmadan bu iddiayı kanıtlar.

Rotasyon bağımsız olmalıdır. Bir agent'ın anahtarı ele geçirilirse, onu döndürmek insanı her yerde yeniden kimlik doğrulamaya zorlamamalıdır. Tersine, asılın kimlik bilgileri döndüğünde, agent'ın devredilmiş yetkisi bir parola değişikliği yerine bir yeniden verme yolu altında ayakta kalmalıdır.

Circuit board macro

Açık kapsam daraltma

Devredilmiş bir yetki aynı anda üç eksende dar olmalıdır:

  • Karşı taraf başına. Bir satıcıdan satın alma yetkisi verilen bir agent, başka bir satıcıdan satın alma yetkisine sahip değildir. Kapsamlar genel bir API yüzeyini değil, güvenilen tarafı adlandırmalıdır.
  • İşlem sınıfı başına. Okuma, rezervasyon, gerçekleştirme ve iade farklı yetkilerdir. Çoğu agent ilk ikisine üçüncüsünden çok daha sık ihtiyaç duyar.
  • Zaman penceresi başına. Bir ödeme akışı için verilen yetki, akış bittiğinde sona ermelidir, oturum cookie'si bittiğinde değil. Açık yenilemeli kısa ömürlü yetkiler, geniş kapsamlı uzun ömürlü token'lardan daha kolay akıl yürütülebilir.

Bunun somut bir mekanizması imzalı bir yetenek token'ıdır — agent'ın karşı tarafa sunduğu, agent tanımlayıcısını, izin verilen karşı tarafı, izin verilen eylem sınıfını, bir geçerlilik penceresini ve asıla geri giden bir imza zincirini içeren yapılandırılmış bir kimlik bilgisi. Karşı taraf zinciri doğrular ve kapsamı yerel olarak uygular. İşlemin ilerlemesi için asılın kontrol düzleminin çevrimiçi olması gerekmez, ancak yeni bir yetki verebilecek tek taraf olarak kalır.

İnsana dokunmayan bir iptal yolu

En sık eksik olan özellik iptaldir. Bir agent'ı durdurmanın tek yolu hesap parolasını değiştirmekse, o agent gerçekten devredilmiş değildir — kimlik taklidi yapıyordur. İptal birinci sınıf bir işlem olmalıdır: agent tanımlayıcısını kontrol düzleminde iptal edildi olarak işaretle, bu durumu yayınla ve karşı tarafların iptal edilmiş kimlik bilgisinin sunumlarını reddetmesini sağla. İnsanın kimlik bilgileri hiçbir zaman devreye girmez.

Tasarım kuralı: kontrol düzlemi kaynağı olarak kimlik

Bunun pratik sonucu, agent kimliğinin bir veritabanı kimlik bilgisi veya bir servis hesabıyla aynı kategoriye ait olmasıdır. Bir giriş formu tarafından değil, altyapı tarafından verilir, kapsamlandırılır, hız sınırlanır, iptal edilir ve kaydedilir.

Bu, kontrol düzleminin her agent için tanımlanmış bir yaşam döngüsüne sahip bir kayıt defterine ihtiyacı olduğu anlamına gelir:

agent_id        kararlı, opak, asla yeniden kullanılmaz
principal_id    yetki kökü
key_material    genel anahtar, rotasyon takvimi
scopes          [{counterparty, action_class, window}]
state           active | suspended | revoked
rate_limits     karşı taraf başına, action_class başına
audit_log       yalnızca ekleme, her sunum kaydedilir

Server rack closeup

Kimliğin her kullanımı denetim kaydına yazılır: hangi agent, hangi karşı taraf, hangi eylem sınıfı, hangi yetki ve sonuç. İhtilaflı bir işlemi çözülebilir kılan kayıt budur. O olmadan, bir asıl adına hareket eden bir agent, doğrudan hareket eden asıldan ayırt edilemez ve hesap verebilirlik tekrar insana döner.

Reddetmeye göre tasarla

Karşı taraflar otonom trafiğin parmak izini alacak ve hız sınırlayacaktır. Bazıları doğrudan reddedecektir. Bu normal bir çalışma koşuludur, bir hata yolu değil. Bir reddi yeniden denenecek bir istisna olarak ele alan bir agent mimarisi, kararını çoktan vermiş bir karşı tarafa karşı tırmanan trafik üretecektir. Doğru davranış, reddi kaydetmek, asıla bildirmek ve durmaktır.

Hız sınırlama, sınırın agent tarafında da olmalıdır. Karşı taraf başına bir üst sınırı olan devredilmiş bir kimlik, bir agent'ın asılın da ihtiyaç duyduğu bir kotayı tüketmesini engeller. Aynı zamanda bir sinyal üretir: bir karşı tarafta sürekli hız sınırı baskısı, kapsamın yanlış olduğunun kanıtıdır, agent'ın daha fazla kapasiteye ihtiyacı olduğunun değil.

Ödünleşim

Bu tasarım, bir oturumu yeniden kullanmaktan daha pahalıdır. Bir kayıt defteri, bir imzalama mekanizması, bir rotasyon takvimi, bir iptal kanalı ve bir denetim hattı gerektirir. Her işleme gecikme ekler, çünkü karşı taraf bir cookie kabul etmek yerine bir kimlik bilgisi zincirini doğrulamak zorundadır. Devredilmiş kimlik bilgilerini henüz hiç kabul etmeyen karşı taraflarla koordinasyon gerektirir — bu durumda agent'ın uyumlu bir yolu yoktur ve insan döngüde onayına geri dönmelidir.

Bu maliyet işin özüdür. Alternatif, insanın tam yetkisiyle hareket eden, atfedilemeyen, daraltılamayan ve insanın erişimini bozmadan durdurulamayan bir agent'tır. Agent'lar üçüncü taraflarla işlem yapmaya başladığında, hesap verebilirlik birimi çoktan değişmiştir. Altyapı da bunu takip etmelidir.

Bunun vardığı yer

Agent kimliği, mevcut bir ürüne sonradan eklenen bir kimlik doğrulama özelliği değildir. Bir agent'ın ne olmasına izin verildiğini belirleyen bir ilkeldir. Onu bir giriş olarak ele alan ekipler, karşı tarafların agent'larını bilinmeyen bir istemci sınıfı olarak ele aldığını keşfetmeye devam edecek ve kimin, hangi yetkiyle hareket ettiği sorulduğunda yanıtları olmayacaktır.

Onu altyapı olarak ele alan ekiplerin — verilen, kapsamlandırılan, hız sınırlanan, iptal edilen, kaydedilen — bir yanıtı olacaktır. Ayrıca bunu kanıtlayacak denetim izine de sahip olacaklardır.

İlgili okumalar

Bunun yanıtladığı sorular

Why can't an agent just reuse the user's OAuth session?

An OAuth token records what a human consented to, not which autonomous process is acting. If several agents run under one token, they cannot be attributed, scoped or revoked independently. Delegated identity separates the agent from the principal.

What does a delegated agent identity need to include?

A stable agent identifier distinct from the principal, its own key material and rotation schedule, scopes narrowed per counterparty, per action class and per time window, and a revocation path that does not require the human to change a password.

How should an agent handle a counterparty refusing its traffic?

Treat refusal as a normal response. Record it, surface it to the principal and stop. Retrying against a counterparty that has already made a policy decision escalates traffic without changing the outcome.

What is the main trade-off of delegated agent identity?

It adds a registry, signing, rotation, revocation and audit infrastructure, plus validation latency at every counterparty. Some counterparties may not accept delegated credentials at all, forcing a human-in-the-loop fallback.