連結現有識別資訊提供者

本頁面說明如何將 Google Distributed Cloud (GDC) 氣隙裝置連線至貴機構現有的身分識別提供者 (IdP)。IdP 是一種系統,可集中管理及保護使用者身分,並提供驗證服務。連結至現有 IdP 後,使用者就能使用機構的憑證存取 GDC,不必在 GDC 中建立或管理個別帳戶。這個程序可確保登入體驗順暢安全。由於 IdP 是全域資源,使用者無論在哪個區域工作,都能透過同一個 IdP 存取 GDC。

設定初始身分識別提供者並連結至身分識別提供者後,您可以使用 GDC 控制台連結其他現有身分識別提供者。

您可以透過下列任一方式,連結至現有的身分識別提供者:

事前準備

如要連結至現有的身分識別提供者,請務必先完成初始設定、要求必要權限,並準備好環境。

初始識別資訊提供者連線設定

貴機構基礎架構營運商群組的成員必須先設定初始 IdP 連線,使用者才能存取 GDC 叢集或資訊主頁。他們可以在 ServiceNow 支援單處理系統中建立支援單,並提供必要的識別資訊提供者資訊。

要求 IAM 角色

如要建立、讀取、更新及刪除身分提供者設定,請與機構 IAM 管理員聯絡,要求 IdP 聯盟管理員 (idp-federation-admin) 角色。

請確認您在連結身分識別提供者時指定的初始管理員,具備機構 IAM 管理員 (organization-iam-admin) 角色。

準備環境

  • 如果尚未下載並安裝 gdcloud CLI,請先完成此步驟。

  • 按照「安裝元件」一文所述,安裝 kubectl CLI。

  • 產生 kubeconfig,設定 kubectl 存取權。

連結至現有識別資訊提供者

如要連結識別資訊提供者,您必須擁有來自識別資訊提供者的單一用戶端 ID 和密碼。您可以使用主控台連線至現有的 OIDCSAML 提供者。

連線至現有的 OIDC 供應商

  1. 登入 GDC 控制台。以下範例顯示登入名為 org-1 的機構後,控制台的畫面: 控制台歡迎頁面,提供常見工作的快速存取連結。
  2. 在導覽選單中,依序點選「Identity and Access」>「Identity」
  3. 按一下「設定新的識別資訊提供者」
  4. 在「設定身分識別提供者」部分,完成下列步驟,然後按一下「下一步」

    1. 在「身分識別提供者」清單中,選取「Open ID Connect (OIDC)」
    2. 輸入識別資訊提供者名稱
    3. 在「Google Distributed Cloud URL」欄位中,輸入您用來存取 GDC 的網址。
    4. 在「核發者 URI」欄位中,輸入授權要求傳送給身分識別提供者的網址。Kubernetes API 伺服器會使用這個網址探索公開金鑰,以驗證權杖。網址必須使用 HTTPS。
    5. 在「Client ID」欄位中,輸入向身分識別提供者提出驗證要求的用戶端應用程式 ID。
      1. 在「Client secret」部分,選取「Configure client secret (Recommended)」(設定用戶端密鑰 (建議))
      2. 在「Client secret」(用戶端密鑰) 欄位中,輸入身分識別供應商與 GDC 氣隙裝置之間共用的密鑰。
    6. 選用:在「前置字元」欄位中輸入前置字元。前置字元是「Identity provider prefix」(識別資訊提供者前置字元) 欄位,請輸入前置字元。前置字串會加到使用者聲明和群組聲明開頭。前置字串用於區分不同的身分識別提供者設定。舉例來說,如果您將前置字元設為 myidp,使用者聲明可能為 myidpusername@example.com,群組聲明可能為 myidpgroup@example.com。將角色型存取控管 (RBAC) 權限指派給群組時,也必須包含這個前置字元。

    7. 選用步驟:在「Encryption」(加密) 部分,選取「Enable encrypted tokens」(啟用加密權杖)

      如要啟用加密權杖,您必須具備 IdP 聯盟管理員角色。請要求機構 IAM 管理員授予您 IdP 聯盟管理員 (idp-federation-admin) 角色。

      1. 在「金鑰 ID」欄位中,輸入金鑰 ID。金鑰 ID 是 JSON Web Encryption Token (JWT) 的公開金鑰。OIDC 供應商會設定及佈建金鑰 ID。
      2. 在「解密金鑰」欄位中,輸入 PEM 格式的解密金鑰。解密金鑰是一種非對稱金鑰,可解密加密內容。OIDC 供應商會設定及佈建解密金鑰。
  5. 在「設定屬性」部分,完成下列步驟,然後按一下「下一步」

    1. 在「OIDC 供應商的憑證授權單位」欄位中,輸入身分識別提供者的 PEM 編碼憑證 (採用 Base64 編碼)。詳情請參閱 https://en.wikipedia.org/wiki/Privacy-Enhanced_Mail
      1. 如要建立字串,請將憑證 (包含標頭) 的編碼方式改為 base64
      2. 並以獨立一行的形式加入。範例:LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tC...k1JSUN2RENDQWFT==
    2. 在「群組聲明」欄位中,輸入身分識別提供者權杖中聲明的名稱,該聲明會保留使用者的群組資訊。
    3. 在「User claim」(使用者聲明) 欄位中,輸入用於識別每位使用者的聲明。許多供應商的預設聲明為 sub。視身分識別提供者而定,您可以選擇其他憑證附加資訊,例如 emailnameemail 以外的憑證附加資訊都必須在前方加上核發者網址,以免發生命名衝突。
    4. 選用:如果您的身分識別提供者使用 GKE Identity Service,請在「自訂屬性」部分中按一下「新增」,然後輸入使用者其他聲明 (例如部門或個人資料相片網址) 的鍵/值組合。
    5. 如果身分識別提供者需要其他範圍,請在「範圍」欄位中,輸入以半形逗號分隔的範圍,然後傳送給身分識別提供者。舉例來說,Microsoft Azure 和 Okta 需要 offline_access 範圍。
    6. 在「Extra parameters」(額外參數) 區段中,輸入身分識別提供者要求的任何額外鍵值組合 (以半形逗號分隔)。如要授權群組,請傳遞 resource=token-groups-claim。 如果授權伺服器提示您同意使用 Microsoft Azure 和 Okta 進行驗證,請設定 prompt=consent。如果是 Cloud Identity,請設定 prompt=consent,access_type=offline
  6. 在「指定初始管理員」部分,完成下列步驟並點選「下一步」

    1. 選擇要將個別使用者或群組新增為初始管理員。
    2. 在「使用者名稱或群組別名」欄位中,輸入使用者或群組的電子郵件地址,即可存取機構。如果您是管理員,請輸入您的電子郵件地址,例如 sally@example.com。前置字串會加在使用者名稱前方,例如 myidp-sally@example.com
  7. 檢查所選項目,然後按一下「設定」

新的身分識別提供者設定檔會顯示在「身分識別設定檔」清單中。

連結至現有的 SAML 提供者

  1. 登入 GDC 控制台。
  2. 在導覽選單中,依序點選「Identity and Access」>「Identity」
  3. 在「設定身分識別提供者」部分,完成下列步驟,然後按一下「下一步」

    1. 在「身分識別提供者」下拉式選單中,選取「安全宣告標記語言 (SAML)」
    2. 輸入識別資訊提供者名稱
    3. 在「Identity ID」欄位中,輸入向身分識別提供者提出驗證要求的用戶端應用程式 ID。
    4. 在「SSO URI」欄位中,輸入供應商的單一登入端點網址。例如:https://www.idp.com/saml/sso
    5. 在「身分提供者前置字元」欄位中輸入前置字元。前置字串會加到使用者和群組聲明的開頭。前置字元可區分不同的識別資訊提供者設定。舉例來說,如果您將前置字串設為 myidp,使用者聲明可能會顯示為 myidpusername@example.com,群組聲明則可能會顯示為 myidpgroup@example.com。為群組指派 RBAC 權限時,也必須加入前置字元。

    6. 選用:在「SAML Assertions」部分,選取「Enable encrypted SAML assertions」

      如要啟用加密的 SAML 聲明,您必須具備 IdP 聯盟管理員角色。請組織 IAM 管理員授予您 IdP 聯盟管理員 (idp-federation-admin) 角色。

      1. 在「Encryption certificate」(加密憑證) 欄位中,輸入 PEM 格式的加密憑證。產生 SAML 供應商後,您會收到加密憑證。
      2. 在「解密金鑰」欄位中輸入解密金鑰。產生 SAML 提供者後,您會收到解密金鑰。
    7. 選用:在「SAML Signed requests」部分,勾選「Enable signed SAML requests」

      1. 在「簽署憑證」欄位中,輸入 PEM 檔案格式的簽署憑證。SAML 供應商會設定並產生簽署憑證。
      2. 在「簽署金鑰」欄位中,以 PEM 檔案格式輸入簽署金鑰。SAML 供應商會設定並產生簽署金鑰。
  4. 在「設定屬性」頁面中,完成下列步驟並按一下「下一步」

    1. 在「IDP certificate」欄位中,輸入身分識別提供者的 Base64 編碼 PEM 編碼憑證。詳情請參閱 https://en.wikipedia.org/wiki/Privacy-Enhanced_Mail
      1. 如要建立字串,請將憑證 (包含標頭) 的編碼方式改為 base64
      2. 並以獨立一行的形式加入產生的字串。例如 LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tC...k1JSUN2RENDQWFT==
    2. 在「Additional IDP certificate」欄位中輸入其他憑證。
    3. 在「使用者屬性」欄位中,輸入用來識別每位使用者的屬性。許多供應商的預設屬性為 sub。視身分提供者而定,您可以選擇其他屬性,例如 emailnameemail 以外的屬性都必須在前方加上核發者網址,以免發生命名衝突。
    4. 在「群組屬性」欄位中,輸入身分識別提供者權杖中屬性的名稱,該屬性會保留使用者的群組資訊。
    5. 選用:如果您的身分識別提供者使用 GKE Identity Service,請在「屬性對應」區域中按一下「新增」,然後輸入使用者其他屬性的鍵值組,例如部門或個人資料相片網址。
  5. 在「指定初始管理員」部分,完成下列步驟,然後按一下「下一步」

    1. 選擇要將個別使用者或群組新增為初始管理員。
    2. 在「使用者名稱」欄位中,輸入使用者或群組的電子郵件地址,即可存取機構。如果您是管理員,請輸入您的電子郵件地址,例如 kiran@example.com。前置字串會加在使用者名稱前方,例如 myidp-kiran@example.com
  6. 在「查看」頁面中,請先檢查每個身分設定的所有值,再繼續操作。按一下「返回」返回上一個頁面,並進行必要的修正。根據規格設定所有值後,按一下「設定」