AIによる業務システムの代行操作、AWSとOktaの連携で約1秒で遮断可能に
- AIエージェントが人の代わりにアプリを操作する権限を、OktaとAWSで安全に統制する手法が示された。
- 権限を解除すると約1秒で新規要求を拒否し、発行済みトークンも5分で失効することが検証で確認された。
- AWS基盤が認証情報を秘匿して短時間トークンを発行し、エージェントコードに秘密情報を渡さず実行する。
米アマゾン・ウェブ・サービス(AWS)は、米Oktaの「Cross App Access(XAA)」と自社のAIエージェント基盤「Amazon Bedrock AgentCore」を組み合わせ、AIエージェントによる企業内アプリケーションへのアクセス権限を厳密に統制するソリューションの技術検証結果を公表した。検証では、管理者がユーザーへのエージェント割り当てを解除した後、約1秒で新規リクエストが拒否されることが確認された。
代理操作における権限管理の課題
業務チケットの更新や顧客データの参照を行うAIエージェントは、利用者の権限の範囲内で各種アプリケーションにアクセスする。しかし、従来のアプリごとのOAuth同意や共有サービスアカウントでは、「どのエージェントが、どのユーザーの代わりに、どのアプリケーションを操作できるのか」「変更時にそれをどう停止させるか」というアクセス管理の課題が残されていた。
OktaとAgentCoreによる3層のトークン連携
今回の手法では、認可の判断をOktaが担い、実行処理をAWS側のBedrock AgentCoreが担う。Oktaがユーザー、エージェント、対象リソースの認可判断を行い、AgentCore Identityがその判断を短時間のアクセストークンへ交換する。リクエスト処理では、利用者を特定するIDトークン、Oktaの決定を示すID-JAG、リソース側が受け入れるアクセストークンの3つが使われ、エージェントの実装コードには秘密鍵などの認証情報が露出しない設計となっている。
検証において、AgentCore Identityによるトークン交換処理の追加時間は約0.6秒にとどまり、全体の約30秒の処理時間に占める影響は軽微であった。また、同じリクエスト内で別のサーバーを呼び出す際の2回目のトークン取得は、中央値58ミリ秒で処理された。
実装のポイントと今後の展開
本構成の基本コードはGitHub上のAgentCoreサンプルリポジトリ「08-okta-xaa-delegation-chain」として公開されている。アクセストークンの有効期限は5分に設定され、権限失効後の不正利用リスクを最小化している。
今回の発表は2部構成の第1部であり、続く第2部では「Amazon Bedrock AgentCore Gateway」の背後に同様の統制を配置し、CedarポリシーやAmazon Elastic Kubernetes Service(Amazon EKS)、Amazon CloudWatchの監査ログと組み合わせた構成を取り上げる予定だという。


この記事は AWS 機械学習ブログの発表を AI が日本語に要約したものです。正確な内容は原文をご確認ください。
アプリで開く