生成式 AI 代理程式與外部工具、API 或服務 (例如 BigQuery、Jira、GitHub 或 Google 地圖) 互動時,需要安全機制來驗證傳出要求。代理身分驗證管理員 (驗證管理員) 會做為集中式憑證保管庫和驗證代理,簡化外寄工具驗證程序,藉此提供這項功能。
使用驗證管理工具的好處
授權管理工具可為代理程式開發帶來以下好處:
- 集中式憑證保險箱:將 API 金鑰、OAuth 用戶端密鑰和使用者權杖儲存在 Google 管理的保險箱中,有助於避免硬式編碼密鑰和自訂資料庫儲存空間。
- 自動執行 OAuth 2.0:處理多步驟 OAuth 2.0 流程,例如使用者同意聲明、授權碼交換和權杖更新,無需自訂後端程式碼。
- 完美整合 ADK:與 Agent Development Kit (ADK) 原生整合,可擷取及插入外送驗證標頭 (例如
Authorization或X-Goog-Api-Key),用於工具和 Model Context Protocol (MCP) 伺服器呼叫。 - 精細的 SPIFFE ID 存取權控管:使用以 SPIFFE 為基礎的代理身分定義精確的 Identity and Access Management (IAM) 政策,確保只有經過授權的代理主體和開發人員可以存取特定驗證供應商。
授權管理工具的運作方式
授權管理員可做為憑證保管庫,介於 Gemini Enterprise Agent Platform 環境的 Agent Runtime 與外部服務端點之間。
當代理呼叫外部工具時,ADK 會攔截工具執行作業、向驗證管理員儲存庫要求適當的憑證,並附加必要的驗證標頭,然後將要求傳送至目標 API。
下方的流程圖說明整體架構和憑證擷取生命週期:
- 使用者觸發需要工具驗證的事件或提示。
- 部署的代理程式 (使用 ADK) 會透明地攔截工具要求,並查詢安全授權管理員保管庫。
- 驗證管理工具會將安全憑證 (API 金鑰或 OAuth 權杖) 傳回給代理程式。
- 代理會使用附加的憑證,叫用外部 API 或工具。
- 第三方服務會驗證憑證,並將要求的資料傳回給代理程式。
- 代理會使用傳回的資料生成最終回覆,並傳送給使用者。
第三方整合範例
驗證管理工具支援標準 OAuth 2.0 和 API 金鑰模式,因此可與許多第三方服務相容。
下表列出部分已驗證的第三方服務、支援的驗證方法,以及設定說明文件。
| 服務 | 支援的驗證方法 | 憑證設定說明文件 |
|---|---|---|
| Atlassian Jira | 三足式 OAuth、API 金鑰 | Jira OAuth 2.0 指南 |
| Dropbox | 三足式 OAuth | Dropbox OAuth 指南 |
| GitHub | 三足式 OAuth* | GitHub OAuth 應用程式 |
| GitLab | 三足式 OAuth | GitLab OAuth 提供者 |
| Microsoft | 三足式 OAuth* | Microsoft Identity Platform |
| Salesforce | 三足式 OAuth、雙足式 OAuth | Salesforce 連結的應用程式 |
| ServiceNow | 三足式 OAuth*、雙足式 OAuth | ServiceNow OAuth 設定 |
* 如要進一步瞭解服務限制和規定,請參閱「服務專屬注意事項」。
服務專屬注意事項
- GitHub 和 Microsoft:驗證管理工具支援 GitHub 和 Microsoft 的單一範圍整合。驗證管理工具不支援要求多個範圍。詳情請參閱「GitHub 或 Microsoft 多個範圍錯誤」。
- ServiceNow:在 ServiceNow 中,管理員會在應用程式層級設定允許的範圍。無論代理要求什麼,ServiceNow 都只會授予這些已設定的範圍。如果代理程式需要未設定的範圍,驗證可能會失敗或進入要求迴圈。請確認 ServiceNow 應用程式設定包含代理人所需的所有範圍。詳情請參閱「ServiceNow 驗證迴圈或非預期範圍」。
位置
Agent Identity 驗證管理工具適用於美洲、歐洲和亞太區域。如需支援的區域清單,請參閱「Agent Identity 區域」。
後續步驟
- 使用驗證管理工具,透過 API 金鑰進行驗證
- 使用驗證管理員透過雙足式 OAuth 進行驗證
- 使用驗證管理工具,透過三足式 OAuth 進行驗證
- 代理身分總覽
- 管理代理商身分驗證提供者
- 代理商身分位置
- 排解代理身分驗證管理員問題