GKE Gateway を Ingress Agent Gateway として使用する

Google Kubernetes Engine(GKE)クラスタで自律型 AI エージェントまたは Model Context Protocol(MCP)サーバーをホストする場合は、外部クライアント、デベロッパー CLI、その他のサービスからの受信接続を保護する必要があります。AI エージェントは実行パスを動的に決定するため、標準のレイヤ 4 ネットワーク ファイアウォールでは完全に保護できません。GKE Gateway API を使用してリージョン アプリケーション ロードバランサをデプロイすると、このクライアントからエージェントへの(上り(内向き))トラフィックを管理し、リクエストがワークロードに到達する前に AI 固有のセキュリティ ガードレールを適用できます。

GKE ネットワーキングを管理するプラットフォーム管理者またはセキュリティ エンジニアは、このアーキテクチャを使用して、セルフマネージド エージェントを安全に公開できます。

内向きトラフィックに Agent Gateway を使用する理由

標準のマイクロサービスは、予測可能な静的依存関係に依存しています。一方、AI エージェントは、ユーザー プロンプトに基づいて実行パスを動的に決定します。このような予測不可能なインタラクション パターンを保護するには、標準の GKE Gateway を Agent Gateway に変換して、次のことを実現します。

  • 複合認可を適用する: 呼び出し元サービスの ID と、リクエスト ペイロードのセマンティック コンテキストの両方をネットワーク エッジで検証します。
  • セキュリティをエージェント コードから切り離す: AI デベロッパーがエージェント アプリケーションに複雑なセキュリティ ロジックを組み込む必要なく、厳格な相互 TLS(mTLS)と認可ポリシーを適用します。
  • プロンプトを自動的にサニタイズする: エージェントの推論エンジンに到達する前に、受信プロンプトをスクリーニングして、プロンプト インジェクション攻撃や有害なコンテンツを検出します。

GKE での Ingress Agent Governance の仕組み

エージェントへのインバウンド トラフィックを管理するには、標準の GKE Gateway API リソースと Agent Platform のガバナンス ポリシーを組み合わせます。

  • GKE Gateway: 標準の Gateway リソース(gke-l7-regional-external-managed または gke-l7-rilb GatewayClass で構成)をデプロイして、ネットワーク エントリ ポイントとしてリージョン HTTP(S) ロードバランサをプロビジョニングします。
  • Agent Gateway のターゲティング: Gateway リソースをターゲットとする GCPAgentGateway カスタム リソースを作成し、ロードバランサを管理対象の Agent Gateway に変換します。
  • ID とアクセス制御: GCPAuthzPolicy カスタム リソースを適用して、レイヤ 7 の ID ベースのアクセス制御を適用します。呼び出し元クライアントの SPIFFE ID を確認し、特定の MCP メソッドまたはツール名(tools/list や tools/call など)へのアクセスを制限できます。
  • コンテンツ セキュリティとカスタム認可: Service Extension Binding カスタム リソースを GCPAgentGateway にアタッチして、受信プロンプトと送信レスポンスを Cloud de Confiance by S3NSModel Armor 経由でルーティングし、プロンプト インジェクション攻撃をブロックするか、認可の決定をカスタム ID プロバイダ(IDP)に委任します。

前提条件

上り(内向き)Agent Gateway を構成する前に、GKE 環境が次の要件を満たしている必要があります。

  • GKE クラスタ バージョン: クラスタで GKE バージョン 1.37.1-gke.1697000 以降を実行する必要があります。
  • Gateway API: クラスタで GKE Gateway API を有効にする必要があります。
  • エージェント ID: ゲートウェイが ID ベースのポリシーを評価できるように、エージェント ワークロードに暗号化された SPIFFE ID を割り当てる必要があります。これらの ID を Pod に割り当てる方法については、GKE の Agent Identity についてをご覧ください。
  • Agent Registry: Agent Registry がワークロードを検出してメタデータを同期できるように、エージェントの Deployment を登録する必要があります。Registry はワークロードを検出し、そのメタデータを同期できます。登録するには、Deployment に registry.gke.io/functional-type: "AGENT" ラベルを追加します。

次のステップ