本文將說明如何設定 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 頁面選取您設定 Identity Platform 時使用的專案。不支援使用其他專案。
選取「應用程式」分頁標籤。
使用 IAP 找出要限制存取權的服務。
將 IAP 欄中的切換鈕切換為「On」。
在側邊面板中,點選「使用外部身分進行驗證」方塊中的「開始」。
確認所選項目。
在 Identity Platform 側邊面板中:
選擇是否要自行建構登入頁面,或是由 IAP 為您建立。
讓 IAP 建立登入頁面,是開始使用這項功能最快的方式。您不需要部署其他服務或撰寫任何新程式碼,而且可以使用 JSON 指定次要自訂項目。詳情請參閱「在 Cloud Run 上代管驗證 UI」。
網域限定共用:如果專案須遵守機構政策中的網域限定共用限制,則您將無法根據預設建立公開服務。您可以使用標記和條件式政策,將特定服務排除在這個限制之外。如需更多資訊,請參閱有關建立公開 Cloud Run 服務的部落格文章,瞭解如何在強制執行網域限定共用機制時建立這類服務。
自行建構頁面雖然較為複雜,但可讓您全面控管驗證流程和體驗。詳情請參閱「使用 FirebaseUI 建立驗證 UI」和「建立自訂驗證 UI」。
如果您選擇自行建構使用者介面,請輸入驗證網址。IAP 會將收到的未驗證要求重新導向至這個網址。
您可以選擇在網址中加入 API 金鑰。如果您未提供鍵, Google Cloud 控制台會自動附加預設鍵。
選擇要使用專案供應者還是租用戶。
勾選要啟用的供應商或租用戶的方塊。如果需要修改供應商或租用戶,請選取「設定供應商」。
按一下 [儲存]。
恭喜!IAP 已設定為使用外部身分驗證使用者。
改回使用 Google 身分
使用外部身分時,您無法使用 IAM 進行授權。如要改回 Google 身分,以便運用 IAM,請按照下列步驟操作:
返回 Google Cloud 控制台的「IAP」頁面。
開啟 IAP 頁面選取已設定為使用 IAP 的資源。
開啟 Identity Platform 資訊面板。
選取「使用 IAM 管理這項資源」。
請注意,切換回 Google 身分會清除驗證網址,以及相關聯的專案和租用戶。