サービス アカウントの権限借用に依存せずに、人間のユーザー、自律型ワークロード、外部ツールにわたって信頼境界を適用するために、Agent Identity は 3 つの ID 委任フレームワークを使用します。このフレームワークは、環境全体で 3 つの異なる ID コンテキストを分離して調整します。
- ユーザー ID: 開始するエンドユーザーの ID。Google Identity または連携 Workforce Identity プロバイダ(IdP)を使用した標準の OAuth 2.0 または OpenID Connect(OIDC)で認証されます。
- エージェント ID: デプロイされたエージェントの一意の暗号的に証明された SPIFFE ID と自動プロビジョニングされた X.509 証明書。エージェントが独自の権限で動作していることを表します。
- 委任された ID: エージェントが、Agent Identity Auth Manager によって仲介されたスコープ付き 3-legged OAuth(3LO)認証情報を使用して、開始した人間のユーザーに代わって行動する場合の、結合された権限コンテキスト。
次の図は、ユーザー ID、エージェント ID、委任された ID が、上り(内向き)、ランタイム、下り(外向き)の信頼境界を越えてどのように相互作用するかを示しています。
このアーキテクチャでは、ユーザー ID が Ingress 時に呼び出し元コンテキストを確立し、エージェント ID がランタイム境界内でワークロードを認証します。エージェントがユーザーに代わってダウンストリーム サービスにアクセスするときは、委任された ID が両方の権限を組み合わせます。
信頼境界を越えて ID が伝播する方法
リクエストがこれらの信頼境界を越えて移動すると、プラットフォームは各 ID レイヤを評価して伝播します。
- クライアントからエージェントへの上り(内向き)境界(ユーザー ID): 人間のユーザーは、OAuth 2.0 または OIDC トークンを使用してクライアント アプリケーションを認証します。トラフィックが Agent Gateway(
CLIENT_TO_AGENTIngress モード)を介して入ると、Agent Gateway に接続された認可ポリシーがユーザー ID を検証して、ユーザーがターゲット エージェントを呼び出す権限を持っていることを確認し、検証済みのユーザー コンテキストをランタイムに転送します。 - Agent Runtime と認証情報のブローカリング(Agent Identity): 分離されたランタイム環境内で、エージェントは独自の SPIFFE Agent Identity で動作し、24 時間ごとに自動ローテーションされる X.509 証明書を使用します。エージェントが下流ツール用の認証情報を必要とする場合、エージェント ID を使用してエージェント ID 認証マネージャーに対して認証を行います。
- 自律型下り(外向き)パス(エージェント ID): エージェントが独自の権限で Google Cloud API またはマシン間エンドポイントを呼び出す場合、相互 TLS(mTLS)と Demonstrating Proof of Possession(DPoP)によって適用される証明書バインド トークン、OIDC ID トークン、または認証マネージャーの 2-legged OAuth(2LO)認証情報を使用して認証します。IAM の許可ポリシーと拒否ポリシー、プリンシパル アクセス境界(PAB)ポリシー、コンテキストアウェア アクセス ポリシーは、エージェント ID に対してリクエストを厳密に評価します。
- ユーザー委任の下り(外向き)パス(委任された ID): エージェントが人間のユーザーに代わってユーザー スコープの Model Context Protocol(MCP)サーバーまたはサードパーティ API を呼び出すと、認証マネージャーは委任された ID を表す同意済みの 3LO ユーザー トークンを仲介します。発信は、エージェントの下り(外向き)ポリシーと、委任ユーザーの権限および同意された OAuth スコープの両方に則って管理されます。監査ログには、エージェント ID とユーザー ID の両方が記録されます。
ID レイヤの比較
次の表は、3 つの ID レイヤがアクセスと監査可能性をどのように管理するかをまとめたものです。
| ID レイヤ | プリンシパルと認証情報の種類 | 信頼境界とポリシーの適用 | 監査ログの帰属 |
|---|---|---|---|
| ユーザー ID | OAuth 2.0 または OIDC トークンで認証されたエンドユーザー(Google アカウントまたは Workforce Identity プリンシパル)の開始。 | クライアントからエージェント(上り(内向き)): Agent Gateway 認可ポリシーは、ユーザーがエージェントを呼び出してセッションを開始できるかどうかを確認します。 | エージェント エンドポイントを呼び出す呼び出し元として、人間のユーザー ID をログに記録します。 |
| エージェント ID | SPIFFE X.509 証明書(mTLS と DPoP)、OIDC ID トークン、または認証マネージャーからの 2LO 認証情報または API キーで認証された自律型エージェント ワークロード(エージェント ID プリンシパル)。 | エージェントから任意の場所(下り(外向き)): IAM 許可、拒否、プリンシパル アクセス境界、コンテキストアウェア アクセス ポリシーにより、エージェントが独自の権限でアクセスできる Google Cloud リソース、認証プロバイダ、外部エンドポイントが適用されます。 | エージェントの一意の SPIFFE プリンシパルを、実行中の ID としてログに記録します。 |
| 委任された ID | Agent Identity Auth Manager が仲介するスコープ付き 3LO アクセス トークンを使用して、同意した人間のユーザー(Google アカウントまたは Workforce Identity プリンシパル)の代理として動作するエージェント ID。 | エージェントから任意の場所(下り(外向き)): 最小権限の交差を適用します。呼び出しは、エージェントのアウトバウンド ガバナンス ポリシーと、委任ユーザーの権限および同意された OAuth スコープの両方を満たす必要があります。 | デュアル アトリビューションを記録し、エージェントの SPIFFE ID と委任する人間のユーザーの両方をキャプチャします。 |