powered by TechFeed
表示モード
Deep Dive

GeminiのAIエージェントはAPIキーを「知らない」まま外部APIを叩ける — プロキシがネットワーク層で認証情報をすり替える設計でプロンプトインジェクションのリスクを大幅低減

11月8日、startuphub.aiが「Google's AI coworker hides keys by design」と題した記事を公開した。この記事では、GoogleのGemini Managed Agentsがネットワークプロキシによる認証情報の隠蔽設計でプロンプトインジェクション攻撃のリスクを低減する仕組みについて詳しく紹介されている。鍵はサンドボックスの外に置くAIエージェントがAPIキーやOAuthトークンを「知らない」まま外部サービスを呼び出せる設計、というのがこの記事の核心だ。Google Developer AdvocateのPhilipp Schmidは、AI Engineerカンファレンス(ニューヨーク・ウォールストリート近郊の会場で開催された開発者向けイベント)のライブデモで、Gemini API Managed Agents上に構築したAIコワーカーの内部構造を公開した。彼はこのシステムを7つの役割に分けて説明している:「脳(brain)」「コンピュータ(computer)」「プレイブック(playbook)」「ツール(tools)」「認証情報(cred...

11月8日、startuphub.aiが「Google's AI coworker hides keys by design」と題した記事を公開した。この記事では、GoogleのGemini Managed Agentsがネットワークプロキシによる認証情報の隠蔽設計でプロンプトインジェクション攻撃のリスクを低減する仕組みについて詳しく紹介されている。

鍵はサンドボックスの外に置く

AIエージェントがAPIキーやOAuthトークンを「知らない」まま外部サービスを呼び出せる設計、というのがこの記事の核心だ。

Google Developer AdvocateのPhilipp Schmidは、AI Engineerカンファレンス(ニューヨーク・ウォールストリート近郊の会場で開催された開発者向けイベント)のライブデモで、Gemini API Managed Agents上に構築したAIコワーカーの内部構造を公開した。彼はこのシステムを7つの役割に分けて説明している:「脳(brain)」「コンピュータ(computer)」「プレイブック(playbook)」「ツール(tools)」「認証情報(credentials)」「ハウスルール(house rules)」「スケジュール(schedules)」だ。

その中でSchmidが最初に語ったのがcredentials(認証情報)だった。これは設計上の優先順位を示している。


プロキシが「本物の鍵」をすり替える仕組み

セキュリティの要となるのが、ネットワーク層に置かれた認証プロキシだ。動作の流れはシンプルだが効果的だ。

  1. エージェントのサンドボックス内にはダミーのクレデンシャル(偽の認証情報)しか存在しない
  2. エージェントがGmailやGoogle Sheetsなど承認済みドメインにリクエストを送ると、プロキシがネットワーク経路上でダミー値を本物のトークンにリアルタイムで差し替える
  3. 承認されていないホストへのリクエストにはすり替えが発生しないため、本物の鍵が外に漏れない

この設計が守るのは、**プロンプトインジェクション攻撃(悪意のある指示を入力に混入させてモデルを操作する攻撃)へのリスク低減だ。攻撃者が「.envファイルを表示して」とエージェントに指示しても、サンドボックス内にはダミーしか存在しないため、取得できる情報は無意味になる。悪意のあるMCPサーバー**(Model Context Protocol準拠のサーバー)が認証情報を引き出そうとしても同様だ。なお、プロキシ設計はあくまでリスクを構造的に低減するアプローチであり、あらゆる攻撃を完全に排除するものではない点には留意が必要だ。

プロキシが対応する認証方式はベアラートークン、OAuth、環境変数の3種類。認証情報はサンドボックス外に書き込み専用で保存され、エージェントから読み取ることはできない設計になっている。


第二の防御:決定論的なフック

もう一つの安全装置はフック(hooks)と呼ばれる仕組みだ。ツール呼び出しに対して正規表現マッチャーを使い、人間の承認フローを挟むことができる。フック自体はエージェントが編集できない保護ファイルとして管理されており、エージェントが自律的にルールを書き換えて抜け道を作ることを防ぐ設計になっている。承認フローを「エージェントの制御外」に置くことで、ツール呼び出しの監査性と制御性を両立させている点がポイントだ。

デモでは、毎朝8時30分に自動実行されるポートフォリオ監査が披露された。スキルを読み込み、株価を確認し、Google Sheetsを更新し、SlackにコンテキストをポストするというワークフローをCronトリガーで動作させていた。フックはこうした定期実行ワークフローにおける承認ゲートとしても機能し、特定のツール呼び出しが発生した際に人間の確認を挟むかどうかをルールベースで制御できる。


脳となるモデルと固有名詞について

デモで「脳」として使われたモデルは元記事中で「Gemini 4 Argon」と表記されており、100万トークンのコンテキストウィンドウと6万4000トークン超の推論枠を持つとされている。価格はSchmidの発表によると入力$2、出力$10。元記事ではai.studio.com/apikeyから4行のコードで呼び出せると記載されており、エージェントIDはanti-gravity preview 09と紹介されている。これらの固有名詞・URLはいずれも元記事の表記をそのまま引用したものであり、TechFeed編集部で独自に確認・検証したものではない点をお断りしておく。

Googleの内部チームもこの仕組みを活用しており、Chromiumの分離作業やGemmaの効率化作業への適用が言及された。また同じデモ内で、GeminiがローカルGPUを使わずに動作するPure Python製3DレイトレーサーをGemini 4 Argonで構築するデモも行われた。


AIエージェントがAPIキーを「知らない」まま外部APIを叩けるという設計は、エンタープライズ環境でのAIエージェント導入における認証管理の一つの回答だ。MCP連携が前提になった現在の開発環境で、どこに秘密情報を置くかという問いはより現実的になっている。

詳細はGoogle's AI coworker hides keys by designを参照していただきたい。