Что такое первоклассная агентская идентичность и только ли это рабочая нагрузка
Предыдущий пост оставил вас с временными учётными данными и недетерминированным субъектом, которым невозможно управлять с помощью статических прав. Решение — прекратить заимствовать. Дайте агенту стабильного, верифицируемого рантайм-субъекта, на которого можно ссылаться при авторизации, приписывать ему действия и отзывать независимо.
В этом предложении скрыты четыре требования. Разберём их.
Четыре компонента агентской идентичности
Отдельный субъект. Агент — это самостоятельный действующий субъект, а не человек, которого он имитирует, и не общая сервисная учётная запись, в которой он прячется. Его действия привязаны именно к нему.
Ограниченные разрешения. Предоставленные права у́же, чем у любого человека, они подогнаны под задачу, а не под того, кто запустил агента. Ограничение области действий — это ответ на проблему недетерминизма из первой части: вы не можете предсказать каждое действие, поэтому ограничиваете пространство, в котором агент может действовать.
Чёткий владелец. Каждый агент должен быть привязан к ответственному за него человеку или команде. Идентичность без владельца — это обязательство, на котором нет ничьего имени.
Кнопка отзыва. Вы можете отозвать агента, не затрагивая чьи-либо ещё учётные данные. Независимый отзыв — это то, что вообще делает идентичность безопасной для распространения.
Упустите хотя бы один компонент — и вы снова в ситуации из первой части. Альтернативные подходы, к которым инженеры прибегают в первую очередь, теряют как минимум один из них.
Сравнение подходов: что ломается в каждом случае
| Подход | Модель субъекта | Атрибуция | Ограничение области | Отзыв | Где ломается |
|---|---|---|---|---|---|
| Общая сервисная учётная запись | Одна идентичность, много агентов | Отсутствует: все агенты выглядят одинаково | Грубая, общая для всех | Отзываешь одного — отзываешь всех | Нет возможности различить агентов или отключить одного |
| Имитация пользователя | Агент заимствует человека | Логи показывают человека, а не агента | Наследует полный доступ человека | Смена ключа ломает человека | Проблема из первой части, только под другим названием |
| Статический секрет | Долгоживущий ключ | Привязан к секрету, а не к субъекту | То, для чего был создан секрет | Нет ротации, нет чистого отзыва | Секрет утекает, живёт вечно, ничего не ограничивает |
| Первоклассная агентская идентичность | Отдельный субъект | Действия приписываются агенту | Ограничена задачей, у́же, чем у человека | Независимая кнопка отзыва | Затраты на эксплуатацию как реальной инфраструктуры |
Таблица 1. Те же четыре вопроса, заданные каждому варианту, который пробуют прежде чем дать агенту собственную идентичность.
Вопрос, который уже задаёт хороший инженер
Если агент получает стабильного рантайм-субъекта с ограниченными разрешениями и кнопкой отзыва, то вы описали идентичность рабочей нагрузки. Так является ли агентская идентичность просто идентичностью рабочей нагрузки под новой вывеской?
Это живая дискуссия, а не устоявшееся мнение, и честный ответ: зависит. Зависит от трёх инвариантов.
Однозначное соответствие. Один агент соответствует ровно одной рабочей нагрузке. Когда это условие выполняется, идентичность нагрузки и есть идентичность агента.
Реестр как источник истины. Существует авторитетный источник, фиксирующий, какие агенты существуют и чем они являются. Без него невозможно рассуждать о всей совокупности агентов, только об отдельных процессах.
Непрерывность идентичности. Идентичность переживает перезапуски, паузы и перепланирования. Агент, который возвращается в работу, доказуемо тот же самый, что был остановлен.
Когда все три выполняются, агентская идентичность сводится к идентичности рабочей нагрузки. Вы аттестуете нагрузку с помощью чего-то вроде SPIFFE или WIMSE и авторизуете напрямую. Дополнительный уровень не нужен.
Когда они нарушаются, агентская идентичность становится надстройкой над идентичностью рабочей нагрузки. А нарушаются они часто. Агенты работают всплесками. Они эфемерны. Они кочуют между нагрузками, а не привязаны к одной. Они порождают подагентов, у которых нет собственной нагрузки для аттестации. Однозначное соответствие разрушается, непрерывность становится сложной, и рабочая нагрузка больше не является точным представителем агента.
Что говорят реальные платформы
Публично анонсированные платформы демонстрируют многоуровневую модель в продакшене. Microsoft Entra Agent ID вводит специализированного субъекта, расширяющего существующий каталог, вместо повторного использования простой идентичности рабочей нагрузки. AWS Bedrock AgentCore предоставляет стабильную агентскую идентичность, которая находится над изолированной рабочей нагрузкой, способной меняться, не меняя при этом идентичность агента.
Обратите внимание, что их объединяет. Каждая существует в рамках одной плоскости управления и одного домена доверия. Одна система выдаёт идентичность, управляет ею и может видеть каждый шаг агента, потому что все шаги происходят на своей территории. Именно это делает многоуровневую модель реализуемой для этих платформ.
Запомните это наблюдение. Оно значит больше, чем кажется, и именно это допущение будет нарушено в четвёртой части.
Выводы
Агентская идентичность — это стабильный рантайм-субъект с собственными ограниченными разрешениями, чётким владельцем и кнопкой отключения. Является ли она просто идентичностью рабочей нагрузки или надстройкой над ней — не вопрос вкуса. Это зависит от того, можете ли вы обеспечить однозначное соответствие, реестр как источник истины и непрерывность на протяжении жизни агента. Проверьте своих агентов по этим трём инвариантам. Там, где они нарушаются, — там и нужен дополнительный уровень, и именно там находится большинство реальных систем.
Теперь у вас есть одиночный агент с идентичностью. Но реальные системы состоят не из одного агента. Пользователь вызывает агента, агент вызывает инструмент, инструмент вызывает другого агента, и идентичность должна пережить каждый такой переход. Следующий пост будет о том, что происходит с идентичностью в этой цепочке и о протоколах, которые либо сохраняют, либо разрушают её.