Агенты, инструменты, MCP и агентный RAG
Сквозной путь агента выглядит так: пользователь → приложение → модель или агент → MCP Gateway → инструмент или бэкенд → целевой ресурс. Проверенная идентичность, ограничения полномочий и корреляция на этом пути обеспечиваются требованиями AI-AGENT-GOAL1, AI-IAM-LEASTPRIV3, AI-MCP1 и AI-MON-TRACE1. Текст от модели не заменяет решение авторизации ни на одном шаге.
Возможности и автономность
Возможности агента и внешние последствия перечислены
Идентификатор требования: AI-AGENT1
Требование
До продуктивного использования владелец должен перечислить доступные агенту инструменты, данные, получателей и действия, а также максимальные последствия каждого действия. Классификация должна отражать фактические возможности: чтение, изменение, публикацию, финансовое действие, запуск кода, управление доступом или воздействие на внешний объект.
Реестр составляется по фактической конфигурации агента, оркестратора и MCP Gateway, а не по проектным описаниям, и учитывает прямой обход к целевой системе и инструменты внешнего провайдера. Неописанная в реестре возможность отклоняется до целевой системы; версия реестра связывается с выпуском.
Ответ модели не ограничивает фактические полномочия. Они определяются доступным эндпоинтом, идентичностью бэкенда и правами на целевой ресурс.
Ручная проверка
- Сопоставьте реестр возможностей с конфигурацией агента, MCP Gateway, бэкенда и целевыми правами.
- Для каждой зарегистрированной возможности выполните один безопасный разрешенный тест; действие с более сильным эффектом, чем описано, отклоняется до вызова целевой системы.
Неучтенный инструмент или более широкое фактическое действие блокирует выпуск.
Артефакт
- Реестр возможностей.
- Сопоставление с конфигурацией.
- Версия реестра.
- Тестовые события.
Автономное выполнение имеет лимиты и условия остановки
Идентификатор требования: AI-AGENT2
Требование
Организация должна назначить владельца сценария и задать допустимое число шагов, время, стоимость, параллельность, повторные попытки и условия остановки. Для каждого лимита указываются точка принудительного контроля и безопасное состояние при ошибке счетчика или недоступности зависимого сервиса.
Агент должен прекращать цикл при повторяющейся ошибке, отсутствии прогресса, нарушении политики, превышении лимита или отзыве задания.
Счетчики применяет оркестратор вне модели; документированные лимиты инструментов MCP не используются как ограничение безопасности. Должно существовать серверное состояние остановки, после установки которого новые действия в целевой системе запрещены.
Реализация
Значения зависят от риска и стоимости сценария и утверждаются владельцем. Алерты Monitoring и бюджеты Yandex Cloud Billing могут обнаружить часть последствий, но уведомление не заменяет лимит и остановку внутри оркестратора или среды исполнения.
Проверка
Создайте тест с циклическим ответом инструмента, повторяющейся ошибкой и исчерпанием одного из лимитов. Агент должен завершить выполнение в заданной границе, не продолжая внешние действия. Остановка должна завершаться записью причины; последующие вызовы целевой системы после остановки должны отсутствовать в журнале или трассировке.
Артефакт
- Тест циклического ответа, повторяющейся ошибки, исчерпания лимита.
- Версия политики и конфигурация счетчиков.
- Итоговая причина остановки.
Цель и полномочия агента поступают только из доверенных источников
Идентификатор требования: AI-AGENT-GOAL1
Требование
Цель задания, системная политика и разрешенный набор действий должны поступать из доверенной конфигурации или проверенного решения приложения. Сообщение пользователя, RAG-фрагмент, ответ инструмента или другого агента не должны расширять полномочия, менять владельца данных или отключать ограничение. Цель формируется как типизированный объект из аутентифицированного серверного источника; сохраняются инициатор, версия цели и политики и разрешенные возможности.
Приложение должно разделять факты, предложения и управляющие инструкции. Изменение доверенной цели журналируется как изменение конфигурации, а не как обычное продолжение диалога. Любое изменение цели проходит новую авторизацию и подтверждение и создает новую версию.
Проверка
Передайте через пользователя, RAG и инструмент три синтетические инструкции расширить цель или отключить контроль. Агент может использовать данные как контекст, но не должен получить новое полномочие. Новое действие в целевой системе должно отсутствовать. При провале сессия останавливается, затронутое делегирование отзывается, исправляется разбор или метки доверия, и тест повторяется.
Артефакт
- Тест расширения цели через пользователя, RAG, инструмент.
- Версия цели и делегирование.
- Подтверждение отсутствия вызова целевой системы.
Идентичность инструмента и подтверждение человека
Каждый инструмент использует отдельную учетную запись с минимальными правами
Идентификатор требования: AI-IAM-LEASTPRIV3
Требование
Инструмент, способный обратиться к целевому ресурсу, должен использовать отдельную учетную запись с минимальными правами на конкретные операции. Один общий административный сервисный аккаунт для несвязанных инструментов не допускается.
Бэкенд должен проверять пользователя или подтвержденный контекст делегирования; имя пользователя, переданное моделью в аргументе, не является доказательством.
Для каждого инструмента фиксируются: вызывающий субъект, сервисный аккаунт среды исполнения, ресурс и действие целевой системы, точная роль и уровень привязки, секрет и сетевой путь.
Если техническая архитектура не поддерживает передачу пользовательского контекста, бэкенд должен применить заранее заданную сервисную политику и сузить ресурсную область до минимальной. Такое ограничение явно отражается в описании возможности агента. Повторное использование сервисного аккаунта допустимо только в одной утвержденной границе с одинаковыми владельцем, данными и действиями; роли вызова и управления шлюзом не заменяют доступ к целевой системе.
Проверка
- Для каждого инструмента сопоставьте бэкенд, сервисный аккаунт, роли и целевые ресурсы.
- Попытайтесь вызвать чужую операцию или подменить идентификатор пользователя.
Разрешение должно определяться бэкендом и IAM, а не текстом модели. Та же идентичность не должна вызывать несвязанную целевую систему, управлять IAM или читать посторонний секрет.
Артефакт
- Сопоставление бэкенда, сервисного аккаунта, ролей.
- Тест подмены.
- Матрица по инструментам.
- Идентификаторы секретов.
Полномочия сессии определяются доверенной делегацией
Идентификатор требования: AI-IAM-COMPROMISE1
Применимость
Требование применяется, если агент действует от имени пользователя, арендатора или иной сессии с различающимися правами.
Требование
Доверенный компонент до вызова инструмента должен проверить аутентифицированного пользователя, сессию и арендатора и передать бэкенду ограниченный контекст делегирования. Бэкенд заново проверяет точные ресурс и действие; агент не может расширить их аргументом инструмента или собственным решением.
Отзыв пользовательской сессии, права или делегирования должен прекращать последующие действия, а постоянная рабочая идентичность агента не должна сохранять более широкое право.
Краткоживущие IAM- и ID-токены используются только для документированной аудитории; для каждой идентичности фиксируются аудитория и срок действия токена, область привязки и способ аварийного отзыва. Совместимость OIDC-поставщика подтверждается его документацией.
Если сквозная делегация технически отсутствует, сервисная политика должна ограничивать доступ заранее определенными ресурсами и операциями, а это ограничение фиксируется как свойство архитектуры. Данные и состояние разных сессий разделяются по AI-INFRA6 и AI-INFRA-ISOL2.
Проверка
- Выполните разрешенное действие в своей сессии, затем попробуйте подменить пользователя, арендатора, ресурс и действие.
- Отзовите тестовую сессию или право и повторите вызов.
Бэкенд должен отклонить подмену и действие после отзыва, а трассировка — показать проверенный контекст без хранения секрета делегирования. В набор тестов входят измененные аудитория или арендатор и просроченный токен.
Артефакт
- Тест подмены пользователя, арендатора, отзыва сессии.
- Запись делегирования.
- Метаданные токена без секрета.
- Событие отзыва.
Действия с существенными последствиями подтверждает человек
Идентификатор требования: AI-AGENT-HITL1
Требование
Организация должна определить действия, для которых требуется подтверждение уполномоченного человека: например, необратимое удаление, изменение доступа, публикация, платеж или отправка чувствительных данных. Перед подтверждением интерфейс должен показать цель, объект, существенные параметры и последствия. Изменение параметров после подтверждения делает подтверждение недействительным.
Подтверждение одноразовое и связано с точными действием, ресурсом и хешем параметров, запрашивающим субъектом и сессией, сроком действия и сводкой риска; подтверждающий по возможности не имеет учетных данных исполнения. Повторное использование, истечение срока и самоподтверждение отклоняются.
Реализация
Подтверждение не заменяет IAM и прикладную авторизацию. Для низкорисковых или полностью обратимых действий организация может выбрать автоматическое выполнение и зафиксировать это решение.
Проверка
Инициируйте тестовое действие с существенными последствиями, измените один параметр после подтверждения и повторите запрос. Действие без актуального подтверждения должно быть отклонено, а субъект и версия параметров — отражены в трассировке.
Артефакт
- Тест действия без подтверждения.
- Изменение параметра после подтверждения.
- Идентификатор и хеш подтверждения.
- Событие целевой системы.
MCP Gateway и целевой сервис
Доступ к MCP Gateway и целевому сервису разделен
Идентификатор требования: AI-MCP1
Требование
Владелец должен отдельно определить вызывающую идентичность, право вызова Gateway, право редактирования его конфигурации, право управлять привязками, сервисный аккаунт Gateway и право целевого сервиса на ресурс. Семантика ролей описана в модели доступа AI Studioserverless.mcpGateways.invoker, для изменения Gateway — serverless.mcpGateways.editor, для управления привязками — serverless.mcpGateways.admin. CLI-справочник используется как источник синтаксиса команд, а не как единственное нормативное описание ролей.
Реализация
Для каждого инструмента фиксируются канал и URL бэкенда, метод аутентификации, разрешенные заголовки, версия входной JSON-схемы и правило обработки неизвестных полей. Ограничение размера параметров и подтверждение действия являются настройкой приложения или оркестратора, а не документированным полем конфигурации MCP Gateway. Элементы Responses mcp_approval_request и mcp_approval_response служат свидетельствами только для документированного пути.
Роль serverless.mcpGateways.anonymousInvoker используется в документированных сценариях доступа к внешним MCP-серверам и серверам из шаблона; ее название не является доказательством публичного или неаутентифицированного доступа.
Публичность Gateway задается отдельно: публичный MCP-сервер допускает неаутентифицированный доступ агентов, а для обращения другого агента к закрытому MCP-серверу требуется IAM-токен сервисного аккаунта либо API-ключ с областью yc.serverless.mcpGateways.invoke. Эти ветви описаны в обзоре MCP Hub
Публичность Gateway, доступ клиента, сервисный аккаунт Gateway и достижимость целевого сервиса проверяются раздельно. Право на Gateway не доказывает авторизацию операции целевым сервисом.
Доступ к MCP Hub API выполняется только с IAM-токеном согласно документации аутентификации AI Studio
Параметры HTTP-инструмента и привязка сервисного аккаунта описаны в инструкции создания MCP Gateway
Операция --tools-file заменяет весь список инструментов. Нативная ссылка Lockbox для произвольных учетных данных пользовательской целевой системы без документации не предполагается.
Проверка
yc serverless mcp-gateway list
yc serverless mcp-gateway get <gateway-id>
yc serverless mcp-gateway list-access-bindings <gateway-id>
yc serverless mcp-gateway list-operations <gateway-id>
- Проверьте конфигурацию, сеть, сервисный аккаунт, привязки, схему и параметры аутентификации.
- Затем выполните разрешенный вызов, вызов без нужной роли, запрос с превышением размера или неизвестным полем и прямой вызов целевого сервиса в обход Gateway.
Обход не должен предоставлять больше прав. Для прикладной трассировки можно использовать документированные события AI Studio, включая вызовы MCP, но они не подтверждают полноту авторизации целевого сервиса; подробнее в каталоге событий AI Studio
Артефакт
- Конфигурация Gateway.
- Разрешенный и запрещенный вызов.
- Обход бэкенда.
- Результат get и привязки шлюза.
- Полная спецификация инструментов.
- Состояние публичного доступа.
- Область действия ключа API.
Межагентные сообщения и агентный RAG
Сообщение другого агента проверяется как недоверенное
Идентификатор требования: AI-APP-INJECT2
Требование
Межагентное сообщение должно иметь проверяемого отправителя, идентификатор и версию схемы, идентификатор задачи, срок актуальности, метку уровня доверия и защиту от повторной обработки. Получатель должен отклонять неизвестную версию схемы и не должен принимать из сообщения новые полномочия или доверенную системную инструкцию.
Циклы и повторная доставка ограничиваются правилами AI-AGENT2. Отправитель связывается с разрешенными типами сообщений; сообщение не может передать действующую системную инструкцию, идентичность, подтверждение или расширенную цель.
Если сообщение содержит RAG-ссылку или найденный фрагмент, право пользователя на документ должно быть проверено до передачи модели по AI-RAG-ACL2. Доверие к агенту-отправителю не переносит автоматически права на данные.
Проверка
Отправьте сообщения с неверной схемой, истекшим сроком, повторным идентификатором и подмененным отправителем: каждое из них должно быть отклонено. Недоверенная инструкция расширить полномочия может остаться данными, но не должна менять доверенную цель или фактические права. Отказ не должен создавать эффекта в инструменте или целевой системе; при провале канал другого агента изолируется, а учетные данные отправителя отзываются.
Артефакт
- Тесты с неверной схемой, истекшим сроком, повтором, подменой отправителя.
- Идентичность и привязка отправителя.
- Версии схемы и политики.