管理員工身分集區提供者

本指南說明如何使用員工身分聯盟執行常見作業。如要設定員工身分聯盟,請參閱下列指南:

事前準備

  1. 您必須 Google Cloud 設定機構。

  2. 安裝 Google Cloud CLI。 完成後,執行下列指令來初始化 Google Cloud CLI:

    gcloud init

    如果您使用外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。

管理集區

本節說明如何管理員工身分集區。

建立集區

如要建立工作人員集區,請執行下列指令:

gcloud

如要建立員工身分集區,請執行下列指令:

gcloud iam workforce-pools create WORKFORCE_POOL_ID \
    --organization=ORGANIZATION_ID \
    --display-name="DISPLAY_NAME" \
    --description="DESCRIPTION" \
    --session-duration=SESSION_DURATION \
    --location=global

更改下列內容:

  • WORKFORCE_POOL_ID:您選擇代表 Google Cloud 工作團隊集區的 ID。集區 ID 在 Google Cloud的所有工作團隊身分集區中,不得重複。如要瞭解如何設定 ID 格式,請參閱 API 說明文件中的「查詢參數」一節。
  • ORGANIZATION_ID:您的 Google Cloud 員工身分集區的組織 ID。員工身分集區適用於機構中的所有專案和資料夾。
  • DISPLAY_NAME:選用。員工身分集區的顯示名稱。
  • DESCRIPTION:選用。員工身分集區 說明。
  • SESSION_DURATION:選用。工作階段持續時間,以附加 s 的數字表示,例如 3600s。工作階段時間決定了從這個工作團隊集區取得的 Google Cloud 存取權杖、控制台 (聯盟) 登入工作階段,以及 gcloud CLI 登入工作階段的有效時間。工作階段持續時間預設為一小時 (3600 秒)。工作階段持續時間值必須介於 15 分鐘 (900 秒) 和 12 小時 (43200 秒) 之間。

控制台

如要建立工作團隊身分集區,請執行下列操作:

  1. 前往 Google Cloud 控制台的「Workforce Identity Pools」(員工身分集區) 頁面:

    前往「Workforce Identity Pools」(員工身分集區) 頁面

  2. 選取員工身分集區的機構。工作人員身分識別集區適用於機構中的所有專案和資料夾。

  3. 點選「建立集區」,然後執行下列操作:

    1. 在「名稱」欄位中,輸入集區的顯示名稱。系統會在您輸入名稱時自動衍生集區 ID,並顯示在「名稱」欄位下方。如要更新集區 ID,請按一下集區 ID 旁的「編輯」。

    2. 選用:在「Description」(說明) 中,輸入集區的說明。

    3. 如要建立員工身分集區,請按「Next」(下一步)。

員工身分集區的工作階段持續時間預設為一小時 (3600 秒)。工作階段持續時間決定了這個工作團隊集區的 Google Cloud 存取權杖、控制台 (聯盟) 和 gcloud CLI 登入工作階段的有效時間。建立集區後,您可以更新集區,設定自訂工作階段持續時間。工作階段持續時間必須介於 15 分鐘 (900 秒) 至 12 小時 (43,200 秒) 之間。

描述集區

gcloud

如要使用 gcloud CLI 說明特定工作人員集區,請執行下列指令:

gcloud iam workforce-pools describe WORKFORCE_POOL_ID \
    --location=global

將 WORKFORCE_POOL_ID 替換為建立集區時選擇的工作團隊集區 ID。

控制台

如要使用 Google Cloud 控制台描述特定工作團隊集區,請執行下列步驟:

  1. 前往「Workforce Identity Pools」(員工身分集區) 頁面:

    前往「Workforce Identity Pools」(員工身分集區) 頁面

  2. 在「工作團隊集區」中選取集區

列出集區

gcloud

如要列出機構中的工作人員集區,請執行下列指令:

gcloud iam workforce-pools list \
    --organization=ORGANIZATION_ID \
    --location=global

請將 ORGANIZATION_ID 替換成組織 ID。

控制台

如要使用 Google Cloud 控制台列出工作團隊集區,請按照下列步驟操作:

  1. 前往「Workforce Identity Pools」(員工身分集區) 頁面:

    前往「Workforce Identity Pools」(員工身分集區) 頁面

  2. 在表格中查看集區清單。

更新集區

gcloud

如要更新特定工作團隊集區,請執行下列指令:

gcloud iam workforce-pools update WORKFORCE_POOL_ID \
    --description=DESCRIPTION \
    --location=global

更改下列內容:

  • WORKFORCE_POOL_ID:工作團隊集區 ID
  • DESCRIPTION:集區說明

控制台

如要使用 Google Cloud 控制台更新特定工作人員集區,請按照下列步驟操作:

  1. 前往「Workforce Identity Pools」(員工身分集區) 頁面:

    前往「Workforce Identity Pools」(員工身分集區) 頁面

  2. 在表格中選取集區。

  3. 更新集區參數。

  4. 按一下「Save Pool」(儲存集區)。

刪除集區

gcloud

如要刪除員工身分識別集區,請執行下列指令:

gcloud iam workforce-pools delete WORKFORCE_POOL_ID \
    --location=global

將 WORKFORCE_POOL_ID 替換為工作團隊集區 ID。

控制台

如要使用 Google Cloud 控制台刪除特定工作人員集區,請按照下列步驟操作:

  1. 前往「Workforce Identity Pools」(員工身分集區) 頁面:

    前往「Workforce Identity Pools」(員工身分集區) 頁面

  2. 在「Workforce pools」(工作人員集區) 中,按一下要刪除的集區旁邊的 「Delete」(刪除)。

  3. 按照其他指示操作。

取消刪除集區

您只能還原過去 30 天內刪除的工作團隊身分集區。

如要取消刪除集區,請執行下列指令:

gcloud iam workforce-pools undelete WORKFORCE_POOL_ID \
    --location=global

將 WORKFORCE_POOL_ID 替換為工作團隊集區 ID。

在工作團隊集區中設定提供者

本節說明如何使用 gcloud 指令設定員工身分集區提供者:

建立 OIDC 提供者

本節說明如何為 OIDC IdP 建立員工身分集區提供者。

gcloud

代碼流程

如要建立使用授權碼流程的 OIDC 供應商,以供網頁登入,請執行下列指令:

gcloud iam workforce-pools providers create-oidc WORKFORCE_PROVIDER_ID \
    --workforce-pool=WORKFORCE_POOL_ID \
    --display-name="DISPLAY_NAME" \
    --description="DESCRIPTION" \
    --issuer-uri="ISSUER_URI" \
    --client-id="OIDC_CLIENT_ID" \
--client-secret-value="OIDC_CLIENT_SECRET" \ --web-sso-response-type="code" \ --web-sso-assertion-claims-behavior="merge-user-info-over-id-token-claims" \ --web-sso-additional-scopes="WEB_SSO_ADDITIONAL_SCOPES" \ --attribute-mapping="ATTRIBUTE_MAPPING" \ --attribute-condition="ATTRIBUTE_CONDITION" \ --jwk-json-path="JWK_JSON_PATH" \ --detailed-audit-logging \ --location=global

請替換下列項目:

  • WORKFORCE_PROVIDER_ID:員工身分集區提供者的專屬 ID。前置字元 gcp- 為保留字元,不得用於工作團隊身分集區或工作團隊身分集區提供者 ID。
  • WORKFORCE_POOL_ID:要連結 IdP 的員工身分集區 ID。
  • DISPLAY_NAME:供應商的選用顯示名稱,方便使用者辨識,例如 idp-eu-employees。
  • DESCRIPTION:員工身分提供者的選用說明,例如 IdP for Partner Example Organization employees。
  • ISSUER_URI:OIDC 核發者 URI,格式為以 https 開頭的有效 URI,例如 https://example.com/oidc。注意:基於安全考量,ISSUER_URI 必須使用 HTTPS 通訊協定。
  • OIDC_CLIENT_ID:向 OIDC IdP 註冊的 OIDC 用戶端 ID;這個 ID 必須與 IdP 發出的 JWT 的 aud 聲明相符。
  • OIDC_CLIENT_SECRET:OIDC 用戶端密鑰。
  • WEB_SSO_ADDITIONAL_SCOPES:要傳送至 OIDC IdP 的選用額外範圍,適用於控制台 (聯合) 或 gcloud CLI 瀏覽器型登入。
  • ATTRIBUTE_MAPPING:屬性對應。 以下是屬性對應的範例:
    google.subject=assertion.oid
    google.groups=assertion.groups,
    attribute.costcenter=assertion.costcenter
    這個範例會將 OIDC 聲明中的 IdP 屬性 assertion.oid、assertion.groups 和 assertion.costcenter 分別對應至 Google Cloud 屬性 google.subject、google.groups 和 attribute.costcenter。
  • ATTRIBUTE_CONDITION:屬性條件,例如 assertion.role == 'gcp-users'。這個條件範例可確保只有具備 gcp-users 角色的使用者,才能使用這個供應商登入。
  • JWK_JSON_PATH:本機上傳的 OIDC JWK 的選用路徑。 如果未提供這個參數, Google Cloud 會改用 IdP 的 /.well-known/openid-configuration 路徑,取得含有公開金鑰的 JWK。如要進一步瞭解本機上傳的 OIDC JWK,請參閱「管理 OIDC JWK」。
  • 員工身分聯盟詳細稽核記錄會將從 IdP 收到的資訊記錄到 Cloud Logging。詳細的稽核記錄有助於排解工作團隊身分識別集區提供者設定問題。如要瞭解如何透過詳細的稽核記錄排解屬性對應錯誤,請參閱「一般屬性對應錯誤」。如要瞭解 Logging 定價,請參閱「Google Cloud Observability 定價」。

    如要為工作團隊身分集區提供者停用詳細稽核記錄功能,請在執行 gcloud iam workforce-pools providers create 時省略 --detailed-audit-logging 旗標。如要停用詳細稽核記錄,您也可以更新供應商。

--web-sso-assertion-claims-behavior 旗標會控管如何將 OIDC 聲明納入用於屬性對應和屬性條件的 assertion 物件。如果是授權碼流程 (--web-sso-response-type="code"),您可以將這個旗標設為下列其中一個值:

  • merge-user-info-over-id-token-claims:將 OIDC UserInfo 端點的聲明與 ID 權杖的聲明合併。如果兩者都包含相同的聲明名稱,系統會優先採用 UserInfo 聲明值。如果 IdP 從 UserInfo 端點傳回額外使用者屬性或群組聲明,請使用這個值。
  • only-id-token-claims:僅包含來自 ID 權杖的聲明。 如果屬性對應和條件所需的所有聲明都已存在於 ID 權杖中,請使用這個值。
在指令回應中,POOL_RESOURCE_NAME 是集區的名稱,例如 locations/global/workforcePools/enterprise-example-organization-employees。

隱含流程

如要建立使用隱含流程進行網頁登入的 OIDC 工作團隊身分識別集區提供者,請執行下列指令:

gcloud iam workforce-pools providers create-oidc WORKFORCE_PROVIDER_ID \
    --workforce-pool=WORKFORCE_POOL_ID \
    --display-name="DISPLAY_NAME" \
    --description="DESCRIPTION" \
    --issuer-uri="ISSUER_URI" \
    --client-id="OIDC_CLIENT_ID" \
    --web-sso-response-type="id-token" \
    --web-sso-assertion-claims-behavior="only-id-token-claims" \
    --web-sso-additional-scopes="WEB_SSO_ADDITIONAL_SCOPES" \
    --attribute-mapping="ATTRIBUTE_MAPPING" \
    --attribute-condition="ATTRIBUTE_CONDITION" \
    --jwk-json-path="JWK_JSON_PATH" \
    --detailed-audit-logging \
    --location=global

請替換下列項目:

  • WORKFORCE_PROVIDER_ID:員工身分集區提供者的專屬 ID。前置字元 gcp- 為保留字元,不得用於工作團隊身分集區或工作團隊身分集區提供者 ID。
  • WORKFORCE_POOL_ID:要連結 IdP 的員工身分集區 ID。
  • DISPLAY_NAME:供應商的選用顯示名稱,方便使用者辨識,例如 idp-eu-employees。
  • DESCRIPTION:員工身分提供者的選用說明,例如 IdP for Partner Example Organization employees。
  • ISSUER_URI:OIDC 核發者 URI,格式為以 https 開頭的有效 URI,例如 https://example.com/oidc。注意:基於安全考量,ISSUER_URI 必須使用 HTTPS 通訊協定。
  • OIDC_CLIENT_ID:向 OIDC IdP 註冊的 OIDC 用戶端 ID;這個 ID 必須與 IdP 發出的 JWT 的 aud 聲明相符。
  • WEB_SSO_ADDITIONAL_SCOPES:要傳送至 OIDC IdP 的選用額外範圍,適用於控制台 (聯合) 或 gcloud CLI 瀏覽器型登入。
  • ATTRIBUTE_MAPPING:屬性對應。 以下是屬性對應的範例:
    google.subject=assertion.oid
    google.groups=assertion.groups,
    attribute.costcenter=assertion.costcenter
    這個範例會將 OIDC 聲明中的 IdP 屬性 assertion.oid、assertion.groups 和 assertion.costcenter 分別對應至 Google Cloud 屬性 google.subject、google.groups 和 attribute.costcenter。
  • ATTRIBUTE_CONDITION:屬性條件,例如 assertion.role == 'gcp-users'。這個條件範例可確保只有具備 gcp-users 角色的使用者,才能使用這個供應商登入。
  • JWK_JSON_PATH:本機上傳的 OIDC JWK 的選用路徑。 如果未提供這個參數, Google Cloud 會改用 IdP 的 /.well-known/openid-configuration 路徑,取得含有公開金鑰的 JWK。如要進一步瞭解本機上傳的 OIDC JWK,請參閱「管理 OIDC JWK」。
  • 員工身分聯盟詳細稽核記錄會將從 IdP 收到的資訊記錄到 Cloud Logging。詳細的稽核記錄有助於排解工作團隊身分識別集區提供者設定問題。如要瞭解如何透過詳細的稽核記錄排解屬性對應錯誤,請參閱「一般屬性對應錯誤」。如要瞭解 Logging 定價,請參閱「Google Cloud Observability 定價」。

    如要為工作團隊身分集區提供者停用詳細稽核記錄功能,請在執行 gcloud iam workforce-pools providers create 時省略 --detailed-audit-logging 旗標。如要停用詳細稽核記錄,您也可以更新供應商。

如果是隱含流程 (--web-sso-response-type="id-token"),您必須將 --web-sso-assertion-claims-behavior 旗標設為 only-id-token-claims,其中只包含 assertion 物件中 ID 權杖的聲明。隱含流程不支援 merge-user-info-over-id-token-claims 值。

在指令回應中,POOL_RESOURCE_NAME 是集區的名稱,例如 locations/global/workforcePools/enterprise-example-organization-employees。

控制台

代碼流程

  1. 前往 Google Cloud 控制台的「Workforce Identity Pools」(員工身分集區) 頁面:

    前往「Workforce Identity Pools」(員工身分集區) 頁面

  2. 在「Workforce Identity Pools」(員工身分集區) 表格中,選取要建立提供者的集區。
  3. 在「供應商」部分,按一下「新增供應商」。
  4. 在「Select a Provider vendor」(選取提供者) 清單中,選取您的 IdP。

    如果您的 IdP 未列出,請選取「Generic Identity Provider」。

  5. 在「選取驗證通訊協定」中,選取「OpenID Connect (OIDC)」。
  6. 在「建立供應商」部分,執行下列操作:
    1. 在「名稱」中,輸入供應商名稱。
    2. 在「說明」中,輸入提供者的說明。
    3. 在「核發者 (網址)」中輸入核發者 URI。OIDC 核發者 URI 必須採用有效的 URI 格式,且開頭為 https,例如 https://example.com/oidc。
    4. 在「用戶端 ID」中,輸入向 OIDC IdP 註冊的 OIDC 用戶端 ID;這個 ID 必須與 IdP 發行的 JWT 的 aud 聲明相符。
    5. 如要建立已啟用的供應商,請確認「啟用供應商」已開啟。
    6. 按一下「繼續」。
  7. 在「與 IdP 分享提供者資訊」部分,複製網址。在 IdP 中,將這個網址設為重新導向 URI,讓 IdP 瞭解登入後要將斷言權杖傳送至何處。
  8. 按一下「繼續」。
  9. 在「設定 OIDC 網頁登入功能」部分,執行下列操作:
    1. 在「流程類型」清單中,選取「程式碼」。
    2. 在「斷言聲明行為」清單中,選取下列任一選項:
      • 使用者資訊和 ID 權杖:合併 UserInfo 端點的聲明與 ID 權杖的聲明,並優先使用相同聲明名稱的 UserInfo 聲明值。如果 IdP 從 UserInfo 端點傳回其他使用者屬性或群組聲明,請選取這個選項。
      • 僅限 ID 權杖:僅包含 ID 權杖中的聲明。如果屬性對應和條件所需的所有聲明都已存在於 ID 權杖中,請選取這個選項。
    3. 在「Client secret」(用戶端密鑰) 欄位中,輸入 IdP 的用戶端密鑰。
    4. 選用:如果您選取「Okta」做為 IdP,請在「openid、profile 和 email 以外的額外範圍」欄位中,新增任何額外的 OIDC 範圍。
  10. 按一下「繼續」。
  11. 在「設定供應商」部分,針對「詳細記錄」,按一下「啟用屬性值稽核記錄」切換鈕。

    員工身分聯盟詳細稽核記錄會將從 IdP 收到的資訊記錄到 Cloud Logging。詳細的稽核記錄有助於排解工作團隊身分識別集區提供者設定問題。如要瞭解如何透過詳細的稽核記錄排解屬性對應錯誤,請參閱「一般屬性對應錯誤」。如要瞭解 Logging 定價,請參閱「Google Cloud Observability 定價」。

    如要為工作團隊身分集區提供者停用詳細稽核記錄,請在建立提供者時,將「啟用屬性值稽核記錄」切換鈕設為關閉。如要停用詳細稽核記錄,您也可以更新供應商。

  12. 如要建立提供者,請按一下「提交」。

建立供應商後,系統會將您重新導向至供應商屬性頁面。

如要設定屬性對應和條件,請按照下列步驟操作:

  1. 系統提示時,請登入外部 IdP,驗證預設屬性對應。
  2. 在提供者屬性頁面中,查看及編輯屬性對應和條件:
    1. 如要新增或編輯屬性對應,請按照下列步驟操作:
      1. 按一下「新增對應」新增對應,或編輯現有對應。
      2. 在「Google n」欄位中 (n 為數字),選取支援的按鍵 Google Cloud。
      3. 在對應的 「OIDC n」欄位中,輸入 IdP 屬性名稱或 CEL 運算式。
    2. 如要新增屬性條件,請按照下列步驟操作:
      1. 按一下「新增條件」。
      2. 在「屬性條件」欄位中,以 CEL 格式輸入條件,例如 assertion.role == 'gcp-users'。這個條件範例可確保只有具備 gcp-users 角色的使用者,才能透過這個供應商登入。
  3. 如要驗證對應項目,請按一下「儲存並重新擷取權杖」。
  4. 如要完成設定,請按一下「儲存並結束」。

隱含流程

  1. 前往 Google Cloud 控制台的「Workforce Identity Pools」(員工身分集區) 頁面:

    前往「Workforce Identity Pools」(員工身分集區) 頁面

  2. 在「Workforce Identity Pools」(員工身分集區) 表格中,選取要建立提供者的集區。
  3. 在「供應商」部分,按一下「 新增供應商」。
  4. 在「Select a Provider vendor」(選取提供者) 清單中,選取您的 IdP。

    如果您的 IdP 未列出,請選取「Generic Identity Provider」。

  5. 在「選取驗證通訊協定」中,選取「OpenID Connect (OIDC)」。
  6. 在「建立供應商」部分,執行下列操作:
    1. 在「名稱」中,輸入供應商名稱。
    2. 在「說明」中,輸入提供者的說明。
    3. 在「核發者 (網址)」中輸入核發者 URI。OIDC 核發者 URI 必須採用有效的 URI 格式,且開頭為 https,例如 https://example.com/oidc。
    4. 在「用戶端 ID」中,輸入向 OIDC IdP 註冊的 OIDC 用戶端 ID;這個 ID 必須與 IdP 發行的 JWT 的 aud 聲明相符。
    5. 如要建立已啟用的供應商,請確認「啟用供應商」已開啟。
    6. 按一下「繼續」。
  7. 在「與 IdP 分享提供者資訊」部分,複製網址。在 IdP 中,將這個網址設為重新導向 URI,讓 IdP 瞭解登入後要將斷言權杖傳送至何處。
  8. 按一下「繼續」。
  9. 在「設定 OIDC 網頁登入功能」部分,執行下列操作:
    1. 在「Flow type」(流程類型) 清單中,選取「ID Token」(ID 權杖)。
    2. 在「Assertion claims behavior」(判斷聲明行為) 清單中,選取「ID token」(ID 權杖)。
    3. 選用:如果您選取 Okta 做為 IdP,請在「openid、profile 和 email 以外的額外範圍」欄位中,新增任何額外的 OIDC 範圍。
  10. 按一下「繼續」。
  11. 在「設定供應商」部分的「詳細記錄」中,按一下「啟用屬性值稽核記錄」切換鈕。

    員工身分聯盟詳細稽核記錄會將從 IdP 收到的資訊記錄到 Cloud Logging。詳細的稽核記錄有助於排解工作團隊身分識別集區提供者設定問題。如要瞭解如何透過詳細的稽核記錄排解屬性對應錯誤,請參閱「一般屬性對應錯誤」。如要瞭解 Logging 定價,請參閱「Google Cloud Observability 定價」。

    如要為工作團隊身分集區提供者停用詳細稽核記錄,請在建立提供者時,將「啟用屬性值稽核記錄」切換鈕設為關閉。如要停用詳細稽核記錄,您也可以更新供應商。

  12. 如要建立提供者,請按一下「提交」。

建立供應商後,系統會將您重新導向至供應商屬性頁面。

如要設定屬性對應和條件,請按照下列步驟操作:

  1. 系統提示時,請登入外部 IdP,驗證預設屬性對應。
  2. 在提供者屬性頁面中,查看及編輯屬性對應和條件:
    1. 如要新增或編輯屬性對應,請按照下列步驟操作:
      1. 按一下「新增對應」新增對應,或編輯現有對應。
      2. 在「Google n」欄位中 (n 為數字),選取支援的按鍵 Google Cloud。
      3. 在對應的「OIDC n」欄位中,輸入 IdP 屬性名稱或 CEL 運算式。
    2. 如要新增屬性條件,請按照下列步驟操作:
      1. 按一下「新增條件」。
      2. 在「屬性條件」欄位中,以 CEL 格式輸入條件,例如 assertion.role == 'gcp-users'。這個條件範例可確保只有具備 gcp-users 角色的使用者,才能透過這個供應商登入。
  3. 如要驗證對應項目,請按一下「儲存並重新擷取權杖」。
  4. 如要完成設定,請按一下「儲存並結束」。

建立 SAML 提供者

本節說明如何為 SAML IdP 建立工作團隊身分集區供應商。

gcloud

如要建立供應商,請執行下列指令:

gcloud iam workforce-pools providers create-saml WORKFORCE_PROVIDER_ID \
    --workforce-pool="WORKFORCE_POOL_ID" \
    --attribute-mapping="ATTRIBUTE_MAPPING" \
    --attribute-condition="ATTRIBUTE_CONDITION" \
    --idp-metadata-path="XML_METADATA_PATH" \
    --detailed-audit-logging \
    --location="global"

更改下列內容:

  • WORKFORCE_PROVIDER_ID:工作團隊提供者 ID
  • WORKFORCE_POOL_ID:工作團隊集區 ID
  • ATTRIBUTE_MAPPING:屬性對應; 舉例來說,如要對應主旨,屬性對應如下:

    
    google.subject=assertion.subject,
    google.groups=assertion.attributes['https://example.com/aliases'],
    attribute.department=assertion.attributes.department[0]
    
  • ATTRIBUTE_CONDITION:選用的屬性條件,例如 assertion.subject.endsWith("@example.com")

  • XML_METADATA_PATH:IdP 中 XML 格式中繼資料檔案的路徑

前置字元 gcp- 為保留字元,不得用於工作團隊身分集區或工作團隊身分集區提供者 ID。

這項指令會將 SAML 判斷中的主體和部門分別指派給 google.subject 和 attribute.department 屬性。此外,屬性條件可確保只有主體結尾為 @example.com 的使用者,才能使用這個員工身分提供者登入。

員工身分聯盟詳細稽核記錄會將從 IdP 收到的資訊記錄到 Cloud Logging。詳細的稽核記錄有助於排解工作團隊身分識別集區提供者設定問題。如要瞭解如何透過詳細的稽核記錄排解屬性對應錯誤,請參閱「一般屬性對應錯誤」。如要瞭解 Logging 定價,請參閱「Google Cloud Observability 定價」。

如要為工作團隊身分集區提供者停用詳細稽核記錄功能,請在執行 gcloud iam workforce-pools providers create 時省略 --detailed-audit-logging 旗標。如要停用詳細稽核記錄,您也可以更新供應商。

控制台

如要使用 Google Cloud 控制台設定 SAML 提供者,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「Workforce Identity Pools」(員工身分集區) 頁面:

    前往「Workforce Identity Pools」(員工身分集區) 頁面

  2. 在「Workforce Identity Pools」(員工身分集區) 表格中,選取要建立提供者的集區。
  3. 在「供應商」部分,按一下「新增供應商」。
  4. 在「Select a Provider vendor」(選取提供者) 清單中,選取您的 IdP。

    如果您的 IdP 未列出,請選取「Generic Identity Provider」。

  5. 在「選取驗證通訊協定」中,選取「SAML」。
  6. 在「建立供應商」部分,執行下列操作:
    1. 在「名稱」部分,輸入供應商名稱。
    2. 選用:在「Description」(說明) 中輸入提供者的說明。
    3. 在「IdP metadata file (XML)」中,選取您在本指南稍早產生的中繼資料 XML 檔案。
    4. 如要建立已啟用的供應商,請確認「啟用供應商」已開啟。
    5. 按一下「繼續」。
  7. 在「Share your provider information」部分,複製網址。在 IdP 中,將第一個網址設為實體 ID,向 IdP 識別您的應用程式。將其他網址設為重新導向 URI,讓 IdP 瞭解登入後要將斷言權杖傳送至何處。
  8. 按一下「繼續」。
  9. 在「設定供應商」部分的「詳細記錄」中, 按一下「啟用屬性值稽核記錄」切換鈕。

    員工身分聯盟詳細稽核記錄會將從 IdP 收到的資訊記錄到 Cloud Logging。詳細的稽核記錄有助於排解工作團隊身分識別集區提供者設定問題。如要瞭解如何透過詳細的稽核記錄排解屬性對應錯誤,請參閱「一般屬性對應錯誤」。如要瞭解 Logging 定價,請參閱「Google Cloud Observability 定價」。

    如要為工作團隊身分集區提供者停用詳細稽核記錄,請在建立提供者時,將「啟用屬性值稽核記錄」切換鈕設為關閉。如要停用詳細稽核記錄,您也可以更新供應商。

  10. 如要建立提供者,請按一下「提交」。

建立供應商後,系統會將您重新導向至供應商屬性頁面。

如要設定屬性對應和條件,請按照下列步驟操作:

  1. 系統提示時,請登入外部 IdP,驗證預設屬性對應。
  2. 在提供者屬性頁面中,查看及編輯屬性對應和條件:
    1. 如要新增或編輯屬性對應,請按照下列步驟操作:
      1. 按一下「新增對應」新增對應,或編輯現有對應。
      2. 在「Google n」欄位中 (n 為數字), 選取 Google Cloud 支援的鍵。
      3. 在對應的「SAML n」欄位中,輸入 IdP 屬性名稱或 CEL 運算式,例如:
        google.subject=assertion.subject
        attribute.costcenter=assertion.attributes.costcenter[0]
        這個範例會將 assertion.subject IdP 屬性對應至 google.subject,並將 assertion.attributes.costcenter[0] IdP 屬性對應至 attribute.costcenter。
    2. 如要新增屬性條件,請按照下列步驟操作:
      1. 按一下「新增條件」。
      2. 在「屬性條件」欄位中,以 CEL 格式輸入條件,例如: 舉例來說,如要將 ipaddr 屬性限制在特定 IP 範圍內,可以設定 assertion.attributes.ipaddr.startsWith('98.11.12.') 條件。這個範例條件可確保只有 IP 位址開頭為 98.11.12. 的使用者,才能使用這個員工身分提供者登入。
  3. 如要驗證對應項目,請按一下「儲存並重新擷取權杖」。
  4. 如要完成設定,請按一下「儲存並結束」。

描述供應商

gcloud

如要說明供應商,請執行下列指令:

gcloud iam workforce-pools providers describe PROVIDER_ID \
    --workforce-pool=WORKFORCE_POOL_ID \
    --location=global

更改下列內容:

  • PROVIDER_ID:供應商 ID
  • WORKFORCE_POOL_ID:工作團隊集區 ID

控制台

如要查看供應商,請按照下列步驟操作:

  1. 前往「Workforce Identity Pools」(員工身分集區) 頁面:

前往「Workforce Identity Pools」(員工身分集區) 頁面

  1. 在表格中,選取要查看供應商的集區。

  2. 在「供應商」表格中,選取供應商。

列出供應商

gcloud

如要列出供應商,請執行下列指令:

gcloud iam workforce-pools providers list \
    --workforce-pool=WORKFORCE_POOL_ID \
    --location=global

將 WORKFORCE_POOL_ID 替換為工作團隊集區 ID。

控制台

如要查看供應商,請按照下列步驟操作:

  1. 前往「Workforce Identity Pools」(員工身分集區) 頁面:

前往「Workforce Identity Pools」(員工身分集區) 頁面

  1. 在表格中,選取要列出供應商的集區。

  2. 「供應商」表格會顯示供應商清單。

更新供應商

gcloud

如要在建立後更新 OIDC 供應商,請執行下列指令:

gcloud iam workforce-pools providers update-oidc PROVIDER_ID \
    --workforce-pool=WORKFORCE_POOL_ID \
    --description="DESCRIPTION" \
    --detailed-audit-logging \
    --location=global

更改下列內容:

  • PROVIDER_ID:供應商 ID
  • WORKFORCE_POOL_ID:工作團隊集區 ID
  • DESCRIPTION:說明
  • 如要啟用詳細稽核記錄,請將 --detailed-audit-logging 標記新增至 gcloud iam workforce-pools providers update。如要停用詳細稽核記錄,請在更新指令中新增 --no-detailed-audit-logging 標記。

控制台

如要更新供應商,請按照下列步驟操作:

  1. 前往「Workforce Identity Pools」(員工身分集區) 頁面:

前往「Workforce Identity Pools」(員工身分集區) 頁面

  1. 在表格中,選取要更新供應商的集區。

  2. 在「供應商」表格中,按一下要更新的供應商旁邊的「編輯」圖示 。

  3. 修改供應商的顯示名稱、說明、狀態或重新導向 URI,然後按一下「儲存」。

  4. 選用:如要查看或編輯屬性對應和條件,請按照下列步驟操作:

    1. 在「供應商屬性」部分,按一下「設定屬性」。
    2. 按照提示登入外部 IdP。
    3. 在提供者屬性頁面中,查看及編輯對應、額外屬性或條件:
      • 如要新增或編輯對應項目,請按一下「新增對應」,然後輸入鍵和值。詳情請參閱「屬性對應」。
      • 如要新增或編輯條件,請按一下「新增條件」並輸入 CEL 運算式。詳情請參閱屬性條件。 如需完整操作說明,請參閱「設定員工身分聯盟」。
    4. 如要驗證對應關係,請按一下「儲存並重新擷取權杖」。
    5. 如要完成更新,請按一下「儲存並結束」。

刪除提供者

如要刪除供應商,請執行下列指令:

gcloud iam workforce-pools providers delete PROVIDER_ID \
    --workforce-pool=WORKFORCE_POOL_ID \
    --location=global

更改下列內容:

  • PROVIDER_ID:供應商 ID
  • WORKFORCE_POOL_ID:工作團隊集區 ID

取消刪除供應商

如要取消刪除過去 30 天內刪除的供應商,請執行下列指令:

gcloud iam workforce-pools providers undelete PROVIDER_ID \
    --workforce-pool=WORKFORCE_POOL_ID \
    --location=global

更改下列內容:

  • PROVIDER_ID:供應商 ID
  • WORKFORCE_POOL_ID:工作團隊集區 ID

管理 OIDC JWK

本節說明如何在員工集區提供者中管理 OIDC JWK。

建立提供者並上傳 OIDC JWK

如要建立 OIDC JWK,請參閱 JWT、JWS、JWE、JWK 和 JWA 實作項目。

如要在建立工作團隊集區提供者時上傳 OIDC JWK 檔案,請執行 gcloud iam workforce-pools providers create-oidc 指令,並使用 --jwk-json-path="JWK_JSON_PATH"。將 JWK_JSON_PATH 替換為 JWKs JSON 檔案的路徑。

這項作業會上傳檔案中的金鑰。

更新 OIDC JWK

如要更新 OIDC JWK,請執行 gcloud iam workforce-pools providers update-oidc 指令,並使用 --jwk-json-path="JWK_JSON_PATH"。 將 JWK_JSON_PATH 替換為 JWKs JSON 檔案的路徑。

這項作業會將所有現有上傳的金鑰,替換為檔案中的金鑰。

刪除所有上傳的 OIDC JWK

如要刪除所有上傳的 OIDC JWK,改用簽發者 URI 擷取金鑰,請執行 gcloud iam workforce-pools providers update-oidc 指令並加上 --jwk-json-path="JWK_JSON_PATH"。將 JWK_JSON_PATH 替換為空白檔案的路徑。使用 --issuer-uri 旗標設定簽發者 URI。

這項操作會刪除所有現有上傳的金鑰。

後續步驟