View a markdown version of this page

AgentCore Identity の機能 - Amazon Bedrock AgentCore

AgentCore Identity の機能

AgentCore Identity は、ワークロード ID 管理と認証情報セキュリティの固有の課題に対処するように設計された一連の機能を提供します。

一元化されたエージェント ID 管理

組織内のすべてのエージェント ID の信頼できる単一のソースとして機能する統合ディレクトリサービスを通じて、エージェント ID とワークロード ID を作成、管理、整理します。各エージェントは、組織全体で一元管理できるメタデータ (名前、ARN、OAuth リターン URLs、作成時刻、最終更新時刻など) を含む一意の ID を受け取ります。エージェント ID ディレクトリは Cognito ユーザープール と同様に機能し、管理者が共通のエージェント ID セット全体でポリシーを設定できるようにするガバナンスの単位を提供します。エージェント ID は、エージェント固有の属性と機能を持つ特殊なワークロード ID として管理されます。エージェント ID の作成と管理の詳細な手順については、AgentCore Identity を使用したワークロード ID の管理」を参照してください。

一元化されたアプローチにより、さまざまな環境やシステムにわたるエージェント ID の管理の複雑さがなくなります。エージェントを AgentCore ランタイム、セルフホスト環境、ハイブリッドデプロイのいずれで実行しても、サービスはエージェントのデプロイ場所に関係なく一貫した ID 管理を提供します。各エージェント ID は、正確なアクセスコントロールとリソース管理を可能にする一意の ARN ( などarn:aws:bedrock-agentcore:region:account:workload-identity/directory/default/workload-identity/agent-name) を受け取ります。また、この一元化により、階層的な組織とグループベースのアクセスコントロールが可能になり、エンタープライズ全体のガバナンスポリシーの実装と、すべてのエージェントオペレーションでのコンプライアンスの維持が容易になります。ARN パスの階層構造 (directory/default/workload-identity/agent-name コンポーネントを使用) を使用すると、管理者はエージェントを論理的に整理し、階層のさまざまなレベルでポリシーを適用できます。たとえば、特定のディレクトリ内のすべてのエージェントをターゲットにしたり、類似の属性を使用したりします。各エージェント ID を個別に管理する必要はありません。

安全な認証情報ストレージ

トークンボールトは、OAuth 2.0 トークン、OAuth クライアント認証情報、API キーを保管中および転送中の包括的な暗号化で保存するためのセキュリティを提供します。すべての認証情報は、カスタマー管理またはサービス管理の KMS AWS キーを使用して暗号化され、不正な取得を防ぐためにアクセス制御されます。ボールトは厳格なアクセスコントロールを実装し、認証されたエージェントが特定の目的と、ワークロードアイデンティティの検証可能な証明を提示した場合にのみ認証情報にアクセスできるようにします。

OAuth 2.0 のスコープベースのセキュリティモデルに基づいて、トークンボールトは、同じ信頼ドメイン内の発信者からであっても、すべてのアクセスリクエストが独立して検証される追加のセキュリティ対策を実装します。この追加のセキュリティメカニズムは、エンドユーザーデータを悪意のあるエージェントコードや不正な動作のエージェントコードから保護するために必要です。ボールトは OAuth 2.0 トークンを安全に保存し、セキュリティリスクを軽減しながら、全体的なセキュリティ体制を改善します。

OAuth 2.0 フローのサポート

OAuth 2.0 クライアント認証情報付与 (machine-to-machine) と OAuth 2.0 認可コード付与 (ユーザー委任アクセス) の両方のネイティブサポートにより、さまざまなユースケースで包括的な認証パターンが可能になります。このサービスは、OAuth 2.0 実装の複雑さに対処しながら、エージェントが AWS リソースやサードパーティーのサービスにアクセスするためのシンプルな APIs を提供します。2LO フローの場合、エージェントはユーザー操作なしでリソースサーバーで直接認証できますが、3LO フローを使用すると、外部サービスからユーザー固有のデータにアクセスするための明示的なユーザーの同意と認可が可能になります。

このサービスは、Google、GitHub、Slack、Salesforce、Atlassian (Jira) などの一般的なサービス用の組み込み OAuth 2.0 認証情報プロバイダーも提供しており、開発作業を削減するために認可サーバーエンドポイントとプロバイダー固有のパラメータが事前に入力されています。カスタム統合の場合、このサービスは、OAuth 2.0 互換リソースサーバーと連携するように調整できる設定可能な OAuth 2.0 認証情報プロバイダーをサポートします。この包括的な OAuth 2.0 サポートにより、複雑な認可フローを実装するエージェント開発者の負担が軽減され、カスタム実装のセキュリティ脆弱性のリスクが軽減されます。これらのプロバイダーの設定に関する包括的な情報については、「認証情報プロバイダーの設定」を参照してください。

エージェント ID とアクセスコントロール

AgentCore Identity は、提供された認証情報を使用してエージェントがリソースにアクセスできるなりすましフローをサポートしています。このアプローチにより、エージェントは監査証跡とアクセスコントロールを維持しながら、ユーザーに代わってアクションを実行できます。なりすましプロセスにより、エージェントは提供された認証情報を使用してリソースにアクセスし、それらの認証情報に基づいて認可を決定できます。

AgentCore SDK 統合

@requires_access_token や @requires_api_key などの宣言注釈による AgentCore SDK とのシームレスな統合により、認証情報の取得と挿入が自動的に処理され、定型コードと潜在的なセキュリティ脆弱性が軽減されます。これらの注釈により、デベロッパーは複雑な OAuth フローを手動で実装する必要がなくなり、トークン管理と認証情報処理の根本的な複雑さを抽象化するシンプルな宣言インターフェイスが提供されます。

SDK 統合は、トークンの有効期限切れやユーザー同意要件などの一般的なシナリオの自動エラー処理も提供します。トークンの有効期限が切れたり、ユーザーの同意が必要な場合、SDK は適切な認可 URLs を自動的に生成し、OAuth フローオーケストレーションを処理して、開発者に簡単な成功または失敗の応答を提供します。この統合により、すべての認証情報オペレーションがセキュリティのベストプラクティスに従っていることを確認しながら、開発時間とセキュリティの脆弱性の可能性を大幅に削減できます。

検証セキュリティをリクエストする

このサービスは、トークン署名の検証、有効期限チェック、スコープの検証など、すべてのリクエストの検証を実装します。

すべてのリクエストを検証が必要として扱い、明示的な承認の証明を要求することで、サービスはリクエストごとにセキュリティ検証を実装します。すべてのオペレーションは、セキュリティモニタリングとコンプライアンスレポートの詳細なコンテキストで記録され、エージェントのアクティビティを可視化します。

これらの機能を組み合わせることで、AI エージェントをデプロイする組織に大きなメリットをもたらします。

  • セキュリティリスクの低減: 認証情報の一元管理により、エージェントコードまたは設定ファイルにシークレットを埋め込む必要がなくなります。

  • 開発の簡素化: 宣言型 APIsと SDK 統合により、エージェントアプリケーションでの安全な認証の実装の複雑さが軽減されます。

  • コンプライアンスの強化: 包括的な監査証跡とアクセスコントロールは、規制コンプライアンス要件をサポートします。

  • 運用効率: 認証情報の自動更新により、運用上のオーバーヘッドが軽減され、セキュリティ体制が向上します。