排解代理程式身分驗證問題

本文說明如何解決常見的使用代理程式身分驗證與驗證管理工具錯誤。

重新導向 URI 不符

如果在 OAuth 流程中收到第三方應用程式的 redirect URI mismatch 錯誤,請確認在第三方開發人員入口網站中註冊的重新導向 URI,與驗證管理工具產生的 URI 完全相符。

如要找出產生的重新導向 URI,請在Google Cloud 控制台中查看驗證供應商詳細資料,或執行下列 gcloud 指令:

gcloud alpha agent-identity connectors describe AUTH_PROVIDER_NAME \
    --location="LOCATION"

缺少使用者角色

如果代理程式無法使用驗證供應商,請確認代理程式身分在驗證供應商資源上具有 roles/iamconnectors.user 角色。

發卡機構端點問題

如果是 OIDC 供應商,請確認簽發者端點可公開存取,且支援 .well-known/openid-configuration 導覽文件。

如果 Google Cloud 無法擷取 OIDC 中繼資料或 JWKS,請確認端點未受到防火牆或受限網路阻擋。

401 UNAUTHENTICATED 錯誤

如果代理程式無法驗證,且您看到下列錯誤,可能是因為 Google 管理的情境感知存取權政策強制執行 mTLS 繫結和 DPoP 加密證明:

{
  "error": {
    "code": 401,
    "message": "Request had invalid authentication credentials. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.",
    "status": "UNAUTHENTICATED"
  }
}

如有特定權杖共用需求,或需要直接在標頭中插入權杖,可以選擇停用這項預設情境感知存取權政策。如要停用這項功能,請在部署代理程式時設定下列環境變數:

config={
  "env_vars": {
    "GOOGLE_API_PREVENT_AGENT_TOKEN_SHARING_FOR_GCP_SERVICES": False,
  }
}

後續步驟