AWS внедрила управляемый портал согласия для OAuth-авторизации ИИ-агентов
AWS Machine Learning · оригинал
Материал подготовлен автоматизированной редакционной системой. Факты можно сверить по указанному первоисточнику.

Amazon Web Services представила Consent portal в рамках Amazon Bedrock AgentCore, который автоматизирует процесс получения пользовательского согласия на доступ ИИ-агентов к внешним сервисам. Новое решение устраняет необходимость для разработчиков самостоятельно строить инфраструктуру привязки сессий и управления OAuth-токенами.
Ценность: Функционал упрощает интеграцию ИИ-агентов с корпоративными инструментами, такими как GitHub и Slack, обеспечивая безопасное хранение токенов и снижая нагрузку на команды разработки при реализации многоэтапной авторизации.
ИИ-агенты, работающие от имени пользователей, часто требуют доступа к внешним сервисам, таким как GitHub или Slack. Для этого необходимо пройти процесс аутентификации у провайдера и получить явное согласие пользователя на запрашиваемый доступ. Ключевой задачей здесь является безопасная привязка полученного OAuth-разрешения к конкретному пользователю, что технически называется session binding. Ранее клиенты, использующие AgentCore Identity и трехногий OAuth (3LO) flow, были вынуждены самостоятельно разрабатывать и хостить инфраструктуру для этого процесса. Это включало создание публичных HTTPS-колбэков, управление браузерными сессиями и вызов специфических API для завершения потока.
Теперь AgentCore Identity предлагает управляемый Consent portal — веб-интерфейс и конечную точку привязки сессий для AgentCore Gateway. Администратор создает портал для шлюза и передает его URL конечным пользователям. Пользователи аутентифицируются через корпоративный провайдер идентичности (IdP), просматривают доступные сервисы и выдают согласие на отдельные провайдеры. Портал самостоятельно обрабатывает редиректы браузера и привязку сессий, а AgentCore Identity хранит полученные токены в защищенном хранилище.
Данный функционал особенно полезен для агентов, используемых через IDE и клиенты Model Context Protocol (MCP), такие как Kiro, Claude Code, Cursor или Visual Studio Code. Разработчики могут выдать согласие перед вызовом инструмента, а последующие запросы будут использовать уже сохраненный токен без повторных подтверждений. В качестве примера рассматривается сценарий, где компания предоставляет разработчикам ИИ-ассистента с доступом к GitHub для создания задач и к Slack для отправки сообщений.
Настройка требует от администратора подготовки корпоративного IdP с поддержкой OpenID Connect (OIDC) и создания OAuth2 credential provider в консоли AWS. Необходимо зарегистрировать колбэк-URL портала в приложении IdP и настроить целевые точки шлюза для GitHub и Slack. Важно, чтобы каждый провайдер имел отдельный outbound OAuth credential provider, а URL колбэков были корректно зарегистрированы в соответствующих приложениях провайдеров.
Для конечного пользователя процесс выглядит следующим образом: он открывает URL портала, входит через корпоративную учетную запись и видит список доступных подключений. При выборе «Connect» для GitHub браузер перенаправляется на страницу согласия GitHub, где пользователь подтверждает доступ. После возврата в портал статус меняется на «Connected». Если агенту также нужен Slack, пользователь может подключить его отдельно, что демонстрирует независимость разрешений для каждого провайдера.
Под капотом портал валидирует ответ IdP и устанавливает зашифрованную браузерную сессию. При выборе подключения портал вызывает GetResourceOauth2Token, получая URL авторизации и URI сессии. После возврата кода авторизации от провайдера браузер направляется на управляемую конечную точку привязки сессий портала, который затем вызывает CompleteResourceTokenAuth в контексте аутентифицированного пользователя. Если провайдер возвращает refresh token, AgentCore Identity сохраняет его и автоматически использует для получения новых access tokens по мере их истечения.
Все операции согласия фиксируются в AWS CloudTrail. Администраторы могут фильтровать события по источнику bedrock-agentcore.amazonaws.com и отслеживать вызовы GetResourceOauth2Token и CompleteResourceTokenAuth. Чувствительные данные, такие как токены и state-значения, маскируются в логах. Для устранения неполадок доступны поля errorCode и errorMessage, которые помогают определить причину сбоя на основе времени события, роли и запрошенных скоупов.