本文說明如何設定 Identity-Aware Proxy (IAP),以使用外部身分。結合 IAP 和 Identity Platform 後,您可以使用各種身分識別提供者 (例如 OAuth、SAML、OIDC 等) 驗證使用者,而不僅限於 Google 帳戶。
啟用及設定 Identity Platform
IAP 會使用 Identity Platform 驗證外部身分。如要瞭解如何啟用這項功能,請參閱 Identity Platform 快速入門導覽課程。
如要使用多個租戶,也必須按照「開始使用多用戶群」一文中的步驟操作。如果不需要隔離資源,可以略過這個步驟,並在專案層級設定所有供應商。如果不確定是否應啟用多重租戶,請參閱外部身分總覽。
最後,請啟用供應商。快速入門導覽課程說明如何使用簡單的使用者名稱和密碼驗證,但 Identity Platform 支援各種提供者類型,包括:
- 電子郵件地址和密碼
- OAuth (例如 Google、Facebook、Twitter 等)
- SAML
- OIDC
- 電話號碼
- 匿名
如要瞭解如何設定其他供應商,請參閱其餘的 Identity Platform 說明文件。請注意,電話號碼和匿名驗證不支援用於多重租戶。IAP 不支援透過電子郵件連結進行無密碼登入。
啟用 IAP 以使用外部身分
設定 Identity Platform 後,您就可以設定 IAP,使用該平台進行驗證。
在 Google Cloud 控制台中開啟 IAP 頁面。
開啟 IAP 頁面選取您設定 Identity Platform 時使用的專案。不支援使用不同專案。
選取「應用程式」分頁標籤。
找出要使用 IAP 限制存取權的服務。
將「IAP」欄中的切換鈕設為「開啟」。
在側邊面板中,按一下「Use external identities for authorization」(使用外部身分進行驗證) 方塊中的「Start」(開始)。
確認選擇無誤。
在 Identity Platform 側邊面板中:
選擇自行建構登入頁面,或由 IAP 為您建立。
讓 IAP 建立登入頁面是開始使用的最快方式。您不需要部署其他服務或編寫任何新程式碼,只要使用 JSON 即可指定次要自訂項目。詳情請參閱「在 Cloud Run 上代管驗證 UI」。
網域限定共用: 如果專案須遵守組織政策中的網域限定共用限制, 您預設無法建立公開服務。您可以使用標記和條件式政策,將特定服務排除在這項限制之外。如要瞭解詳情,請參閱網誌文章,瞭解如何建立公開 Cloud Run 服務,並強制執行網域限定共用。
自行建構頁面較為複雜,但可全面掌控驗證流程和體驗。詳情請參閱「使用 FirebaseUI 建立驗證 UI」和「建立自訂驗證 UI」。
如果您選擇自行建構 UI,請輸入驗證網址。 IAP 會將收到的未驗證要求重新導向至這個網址。
您也可以選擇在網址中加入 API 金鑰。如未提供金鑰, Google Cloud 控制台會自動附加預設金鑰。
選取要使用專案供應商或租戶。
勾選要啟用的供應商或房客方塊。如要修改供應商或房客,請選取「設定供應商」。
按一下 [儲存]。
恭喜!IAP 已設定為使用外部身分驗證使用者。
改回使用 Google 身分
使用外部身分時,您無法使用 IAM 進行授權。如要切換回 Google 身分,以便運用 IAM,請按照下列步驟操作:
返回 Google Cloud 控制台的 IAP 頁面。
開啟 IAP 頁面選取已設定使用 IAP 的資源。
開啟 Identity Platform 資訊面板。
選取「使用 IAM 管理這項資源」。
請注意,切換回 Google 身分識別後,系統會清除驗證網址和相關聯的專案與租戶。