Identity-Aware Proxy (IAP) OAuth Admin API 已淘汰。本指南說明如何將現有 OAuth 用戶端遷移至 Google 代管的 OAuth 用戶端。如果您不使用 IAP OAuth Admin API,這項異動不會對您造成影響。
如要確認專案是否使用 OAuth Admin API,請參閱「檢查 OAuth Admin API 使用情形」。如果專案使用 OAuth Admin API,請務必按照本文中的遷移操作說明操作,或使用 OAuth Admin API 的替代方案。
有何異動
我們將淘汰 IAP OAuth Admin API,包括下列 API 和 gcloud CLI 指令群組,用於手動管理 OAuth 用戶端和品牌:
- OAuth 用戶端 API
- Brands API
gcloud iap oauth-brands(create、describe和list),包括alpha和beta發布群組gcloud iap oauth-clients(create、delete、describe、list和reset-secret),包括alpha和beta發布群組
您無法再使用 IAP OAuth Admin API 建立或管理自訂 OAuth 用戶端。IAP 會使用 Google 代管的 OAuth 用戶端,而非手動管理 OAuth 2.0 用戶端。這可簡化 OAuth 用戶端管理作業、減少人為錯誤,並簡化部署程序。
如要繼續提供自訂品牌宣傳,建議您設定自訂 OAuth 用戶端。
維持不變的部分
如果您不使用 IAP OAuth Admin API,這項異動不會對您造成影響。
這項淘汰作業不會影響您使用 Compute Engine API、App Engine API 或 Google Cloud 控制台手動設定的 OAuth 用戶端。此外,這項異動也不會影響其他 IAP API 或 gcloud CLI 指令群組 (包括其 alpha 和 beta 發布群組),這些群組用於管理 IAP 存取權政策、設定或 TCP 轉送,例如 gcloud iap web (例如 get-iam-policy 和 remove-iam-policy-binding)、gcloud iap settings 和 gcloud iap tcp,因為這些指令使用的是 IdentityAwareProxyAdminService API,而非已淘汰的 IdentityAwareProxyOAuthService API。
您可以繼續建立新的 OAuth 品牌和用戶端設定,並使用 Google Cloud 控制台管理。您不必遷移現有的 OAuth 用戶端,可以繼續透過Google Cloud 控制台 (而非 IAP OAuth Admin API) 使用及管理這些用戶端。
檢查 IAP OAuth Admin API 使用情形
如要確認專案是否使用 IAP OAuth Admin API,請按照下列步驟操作:
前往 Google Cloud 控制台的「IAP API Usage」(IAP API 用量) 頁面。
選取要檢查 IAP OAuth Admin API 用量的專案。
在「Select Graphs」(選取圖表) 清單中,選取「Traffic by API method」(依 API 方法顯示流量),然後按一下「OK」(確定)。
在「Methods」(方法) 區段中,尋找前置字串為
google.cloud.iap.v1.IdentityAwareProxyOAuthService的方法,這表示專案使用 IAP OAuth Admin API。
詳細說明
自 2025 年 1 月 22 日起,用於建立 IAP OAuth 2.0 用戶端的 IAP OAuth 2.0 Admin API 已淘汰。根據預設,或未明確設定 OAuth 2.0 用戶端時,IAP 現在會使用 Google 代管的 OAuth 用戶端進行瀏覽器存取。Google 代管的 OAuth 2.0 用戶端會限制使用者透過瀏覽器存取已啟用 IAP 的應用程式,只有相同組織內的使用者才能存取。
Identity-Aware Proxy (IAP) OAuth 2.0 Admin API 已淘汰,您無法再使用這個 API 建立或管理 OAuth 用戶端。在此之前建立的 OAuth 用戶端不會失效。您可以繼續使用先前建立的 OAuth 用戶端,並透過 Google Cloud 控制台管理這些用戶端。
如果應用程式設定的 OAuth 用戶端是使用 IAP 2.0 Admin API 或其他方式建立,這些應用程式將繼續運作。應用程式不需任何變更。不過,如果自動化指令碼或基礎架構即程式碼 (IaC) 工具使用 IAP OAuth 2.0 Admin API 設定新用戶端,或擷取現有用戶端的用戶端密鑰,則必須更新指令碼,停止使用 IAP OAuth 2.0 Admin API。
要繼續使用現有的使用者代管用戶端,還是改用 Google 代管選項,取決於您對品牌宣傳和外部存取權的需求。如需所有功能差異的詳細細目,請參閱 Google 代管和自訂 OAuth 用戶端比較表。如果應用程式需要自訂用戶端 ID,以便進行品牌宣傳或外部存取,請使用 Google Cloud 控制台建立用戶端 ID。如要進一步瞭解自訂 OAuth 用戶端,請參閱「自訂 OAuth 設定以啟用 IAP」。
如要瞭解如何為應用程式設定 Google 代管的 OAuth 2.0 用戶端,請參閱「程式輔助存取」。
如果 Google 代管的 OAuth 2.0 用戶端無法滿足您的需求,您可以與多個 IAP 應用程式共用單一 OAuth 用戶端,這樣就不必為每個新應用程式手動建立用戶端。
必要操作
更新自動化動作指令碼
如果您使用 Terraform、gcloud CLI (
gcloud iap oauth-brands或gcloud iap oauth-clients,包括alpha和beta) 或其他工具自動設定 IAP,並使用 IAP OAuth 2.0 Admin API,則必須更新自動化指令碼,改用預先建立的用戶端,或搭配 IAP 使用 Google 代管的 OAuth 用戶端。使用 Google 代管的 OAuth 2.0 用戶端,設定應用程式的程式輔助存取權
如果您已有受 IAP 保護的應用程式,並打算使用 Google 代管的 OAuth 2.0 用戶端遷移這些應用程式,可以將 OAuth 2.0 用戶端加入許可清單,為這些應用程式設定程式輔助存取權。
遷移已啟用 IAP 的資源
如要將資源遷移至 Google 代管的 OAuth 2.0 用戶端,請按照要遷移的資源類型 (例如 Compute Engine 資源) 步驟操作。
遷移已啟用 IAP 的 App Engine 資源
請完成本節中的步驟,遷移已啟用 IAP 且已設定 OAuth 2.0 用戶端的 App Engine 資源。
gcloud
繼續執行步驟前,請確認您使用的是最新版 gcloud CLI。如需安裝 gcloud CLI 的操作說明,請參閱「安裝 gcloud CLI」。
使用 Google Cloud CLI 進行驗證。
gcloud auth login點選出現的網址並登入。
登入之後,複製顯示的驗證碼並貼到指令列中。
執行下列指令,指定要繼續使用 IAP 保護的應用程式所在專案。
gcloud config set project PROJECT_ID執行下列指令,擷取已設定的 OAuth 2.0 用戶端 ID。
gcloud app describe --format="value(iap.oauth2ClientId)"如要允許程式輔助存取,請儲存上一個指令中的用戶端 ID。
如要將 OAuth 2.0 用戶端加入許可清單,以便透過程式輔助方式存取,請對 IAP 設定 API 執行讀取-更新-寫入作業。
gcloud iap settings get --resource-type=app-engine --project=$PROJECT > settings.yaml更新
settings.yaml檔案,並在programmaticClients下方新增先前擷取的 OAuth 2.0 用戶端 ID,如下例所示。accessSettings: oauthSettings: programmaticClients: - CLIENT_ID將新設定套用至 App Engine 應用程式
gcloud iap settings set settings.yaml --resource-type=app-engine --project=PROJECT_ID如要遷移應用程式,請執行下列指令。
gcloud iap web enable --resource-type=app-engine
API
執行下列指令,擷取已設定的 OAuth 2.0 用戶端 ID。
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ "https://appengine.googleapis.com/v1/apps/PROJECT_ID?fields=iap"執行下列指令,將現有 IAP 設定擷取至
settings.json檔案。curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/appengine-PROJECT_ID:iapSettings" > settings.json更新
settings.json檔案,將先前儲存的 CLIENT_ID 新增為程式輔助用戶端。{ "accessSettings": { "oauthSettings": { "programmaticClients": [ "CLIENT_ID" ] }, }, }執行下列指令,更新 IAP 設定。
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d "@settings.json" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/appengine-PROJECT_ID:iapSettings"執行下列指令,準備
settings.json檔案。cat << EOF > settings.json { "iap": { "enabled":true } } EOF執行下列指令來遷移應用程式。
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d @settings.json \ "https://appengine.googleapis.com/v1/apps/PROJECT_ID?updateMask=iap"
遷移已啟用 IAP 的 Compute Engine 資源
完成本節中的步驟,遷移已啟用 IAP 並設定 OAuth 2.0 用戶端的 Compute Engine 資源。
gcloud
繼續執行步驟前,請確認您使用的是最新版 gcloud CLI。如需安裝 gcloud CLI 的操作說明,請參閱「安裝 gcloud CLI」。
使用 Google Cloud CLI 進行驗證。
gcloud auth login點選出現的網址並登入。
登入之後,複製顯示的驗證碼並貼到指令列中。
執行下列指令,指定要繼續使用 IAP 保護的應用程式所在專案。
gcloud config set project PROJECT_ID執行下列指令,擷取已設定的 OAuth 2.0 用戶端 ID。
全域範圍
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --global \ --format="value(iap.oauth2ClientId)"區域範圍
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --region REGION_NAME \ --format="value(iap.oauth2ClientId)"如要允許程式輔助存取,請儲存上一個指令的用戶端 ID。
如要授予 OAuth 2.0 用戶端程式輔助存取權,請對 IAP 設定 API 執行讀取-更新-寫入作業。
全域範圍
gcloud iap settings get \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME > settings.yaml區域範圍
gcloud iap settings get \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME \ --region=REGION_NAME > settings.yaml更新
settings.yaml檔案,並在programmaticClients下方新增先前擷取的 OAuth 2.0 用戶端 ID,如以下範例所示:accessSettings: oauthSettings: programmaticClients: - CLIENT_ID將新設定套用至 Compute Engine 應用程式:
全域範圍
gcloud iap settings set settings.yaml \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME
區域範圍
gcloud iap settings set settings.yaml \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME \ --region=REGION_NAME
如要遷移應用程式,請執行下列指令。如要清除 OAuth 用戶端 ID 和 OAuth 密鑰,請在指令中傳遞以引號括住的單一空格 (
" ")。後端服務會使用 Google 代管的 OAuth 用戶端。全域範圍
gcloud compute backend-services update BACKEND_SERVICE_NAME \ --global \ --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "區域範圍
gcloud compute backend-services update BACKEND_SERVICE_NAME \ --region REGION_NAME \ --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "如要確認您已移除 OAuth 用戶端 ID 和 OAuth 用戶端密鑰,且後端服務使用的是 Google 代管的 OAuth 用戶端,請執行 gcloud compute backend-services describe。如要在遷移期間清除這些欄位,
gcloud compute backend-services update指令會使用單一空格 (" "),Compute Engine API 會將其解讀為移除oauth2ClientId和oauth2ClientSecret值的指令。全域範圍
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --global區域範圍
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --region REGION_NAME執行
describe指令後,請查看輸出內容的iap區段。如果oauth2ClientId欄位顯示單一空格 (' '),且oauth2ClientSecret欄位包含單一空格的 SHA256 雜湊 (36a9e7f1c95b82ffb99743e0c5c4ce95d83c9a430aac59f84ef3cbfab6145068),則表示遷移成功。
API
執行下列指令,擷取已設定的 OAuth 2.0 用戶端 ID。
全域範圍
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME?fields=iap.oauth2ClientId"
區域範圍
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME?fields=iap.oauth2ClientId"
執行下列指令,將現有 IAP 設定擷取至
settings.json檔案。全域範圍
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute/services/BACKEND_SERVICE_NAME:iapSettings" > settings.json
區域範圍
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute-REGION_NAME/services/BACKEND_SERVICE_NAME:iapSettings" > settings.json
更新
settings.json檔案,將先前儲存的 CLIENT_ID 新增為程式輔助用戶端。{ "accessSettings": { "oauthSettings": { "programmaticClients": [ "CLIENT_ID" ] }, }, }執行下列指令,更新 IAP 設定。
全域範圍
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d "@settings.json" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute/services/BACKEND_SERVICE_NAME:iapSettings"
區域範圍
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d "@settings.json" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute-REGION_NAME/services/BACKEND_SERVICE_NAME:iapSettings"
執行下列指令,準備
settings.json檔案。cat << EOF > settings.json { "iap": { "enabled":true, "oauth2ClientId": " ", "oauth2ClientSecret": " " } } EOF執行下列指令,遷移 IAP 資源。
全域範圍
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d @settings.json \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME"
區域範圍
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d @settings.json \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME"
如要確認未設定 OAuth 用戶端 ID,請執行下列全域或區域範圍指令。執行指令後,請檢查輸出內容,確認 OAuth 用戶端 ID 欄位為空白。
全域範圍
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME"
區域範圍
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME"
Terraform
如要將已啟用 IAP 的現有資源遷移至 Google 代管的 OAuth 用戶端,請務必明確取消設定 oauth2_client_id 和 oauth2_client_secret 欄位。如要取消設定欄位,請將值更新為單一空白字元,如下例所示:
resource "google_compute_backend_service" "default" {
name = "tf-test-backend-service-external"
protocol = "HTTP"
load_balancing_scheme = "EXTERNAL"
iap {
oauth2_client_id = " "
oauth2_client_secret = " "
}
}
oauth2_client_id 和 oauth2_client_secret 為選用欄位,如果您使用的是已啟用 IAP 的新資源,可以忽略這些欄位。
如要進一步瞭解如何搭配使用 Terraform 和 Google Cloud,請參閱 Terraform 說明文件。
遷移已啟用 IAP 的 Cloud Run 資源
完成本節中的步驟,遷移已啟用 IAP 並設定 OAuth 2.0 用戶端的 Cloud Run 資源。
gcloud
繼續執行步驟之前,請確認您使用的是最新版 gcloud CLI。如需 gcloud CLI 的安裝操作說明,請參閱「安裝 gcloud CLI」。
如要進行驗證,請使用 Google Cloud CLI 執行下列指令。
gcloud auth login點選出現的網址並登入。
登入之後,複製顯示的驗證碼並貼到指令列中。
執行下列指令,指定要繼續使用 IAP 保護的應用程式所在專案。
gcloud config set project PROJECT_ID執行下列指令,擷取已設定的 OAuth 2.0 用戶端 ID。
全域範圍
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --global \ --format="value(iap.oauth2ClientId)"區域範圍
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --region REGION_NAME \ --format="value(iap.oauth2ClientId)"如要允許程式輔助存取,請儲存上一個指令中的用戶端 ID。
如要將 OAuth 2.0 用戶端加入許可清單,以便透過程式輔助方式存取,請對 IAP 設定 API 執行讀取-更新-寫入作業。
全域範圍
gcloud iap settings get \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME > settings.yaml區域範圍
gcloud iap settings get \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME \ --region=REGION_NAME > settings.yaml更新
settings.yaml檔案,並在programmaticClients下方新增先前擷取的 OAuth 2.0 用戶端 ID,如範例所示。accessSettings: oauthSettings: programmaticClients: - CLIENT_ID將新設定套用至 Compute Engine 應用程式。
全域範圍
gcloud iap settings set settings.yaml \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME區域範圍
gcloud iap settings set settings.yaml \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME \ --region=REGION_NAME如要遷移資源,請執行全域或區域範圍的指令。
全域範圍
gcloud compute backend-services update BACKEND_SERVICE_NAME \ --global \ --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "區域範圍
gcloud compute backend-services update BACKEND_SERVICE_NAME \ --region REGION_NAME \ --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "如要確認未設定 OAuth 用戶端 ID,請執行下列全域或區域範圍指令。執行指令後,請檢查輸出內容,確認 OAuth 用戶端 ID 欄位為空白。
全域範圍
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --global區域範圍
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --region REGION_NAME
API
執行下列指令,擷取已設定的 OAuth 2.0 用戶端 ID。
全域範圍
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME?fields=iap.oauth2ClientId"
區域範圍
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME?fields=iap.oauth2ClientId"
執行下列指令,將現有 IAP 設定擷取至
settings.json檔案。全域範圍
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute/services/BACKEND_SERVICE_NAME:iapSettings" > settings.json
區域範圍
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute-REGION_NAME/services/BACKEND_SERVICE_NAME:iapSettings" > settings.json
更新
settings.json檔案,將先前儲存的 CLIENT_ID 新增為程式輔助用戶端。{ "accessSettings": { "oauthSettings": { "programmaticClients": [ "CLIENT_ID" ] }, }, }執行下列指令,更新 IAP 設定。
全域範圍
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d "@settings.json" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute/services/BACKEND_SERVICE_NAME:iapSettings"
區域範圍
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d "@settings.json" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute-REGION_NAME/services/BACKEND_SERVICE_NAME:iapSettings"
執行下列指令,準備
settings.json檔案。cat << EOF > settings.json { "iap": { "enabled":true, "oauth2ClientId": " ", "oauth2ClientSecret": " " } } EOF執行下列指令來遷移資源。
全域範圍
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d @settings.json \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME"
區域範圍
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d @settings.json \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME"
如要確認未設定 OAuth 用戶端 ID,請執行下列全域或區域範圍指令。執行指令後,請檢查輸出內容,確認 OAuth 用戶端 ID 欄位為空白。
全域範圍
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME"
區域範圍
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME"
遷移已啟用 IAP 的 Google Kubernetes Engine 資源
將下列 IAP 區塊新增至 BackendConfig 自訂資源定義 (CRD)。這樣一來,系統就會啟用 IAP,並使用 Google 代管的 OAuth 2.0 用戶端。
apiVersion: cloud.google.com/v1
kind: BackendConfig
metadata:
name: config-default
namespace: my-namespace
spec:
iap:
enabled: true
使用服務帳戶 JWT 向 IAP 驗證
您可以使用服務帳戶 JWT 向 IAP 進行驗證,不必使用已淘汰的 OAuth Admin API。
取得 OAuth 用戶端密鑰
在 Google Cloud 控制台建立自訂 OAuth 用戶端時,系統只會在建立時顯示用戶端密鑰。您必須妥善儲存這組密鑰。建議使用 Secret Manager 安全儲存 OAuth 用戶端密鑰。
如果您使用 Secret Manager 儲存 OAuth 用戶端密鑰,請參閱「存取密鑰版本」一文,瞭解如何取得用戶端密鑰。
確認是否使用 IAP OAuth Admin API
如要確認專案是否使用 IAP OAuth Admin API,請參閱「檢查 OAuth Admin API 使用情形」。
使用 OAuth Admin API 的替代方案
如需在不使用 OAuth API 的情況下取得 OAuth 用戶端憑證,可以使用下列方法:
Google Cloud 控制台:您可以透過「Credentials」(憑證) 頁面手動取得 OAuth 憑證。
Secret Manager:您可以使用 Secret Manager 儲存及擷取密鑰。如要瞭解如何搭配使用 Secret Manager 和 Terraform,請參閱 google_secret_manager_secret。
服務帳戶 JWT:使用服務帳戶 JSON Web Token (JWT) 進行驗證。使用服務帳戶 JWT 時,您不需要使用 OAuth 用戶端。