使用外部身分識別提供者進行使用者管理

本主題描述如何將 IDCS 設定為 Oracle Blockchain Platform Enterprise Edition 的外部 OpenID Connect (OIDC) 身分識別提供者。

先決條件

在 Oracle Blockchain Platform Enterprise Edition 中建立執行處理之前:

  • 在選取的身分識別提供者中建立管理員帳戶。
  • 建立 Oracle Blockchain Platform Enterprise Edition 管理和區塊鏈存取所需的使用者和群組。
  • 註冊機密 OIDC 從屬端應用程式。
  • 取得從屬端 ID、從屬端加密密碼、發照者、授權、記號、JWKS 以及撤銷端點。
  • 決定用於使用者名稱、用戶端 ID 和群組成員的宣告名稱。

設定 IDCS

設定機密從屬端

  1. 登入 IDCS 識別網域。建立網域。
  2. 建立 Oracle Blockchain Platform Enterprise Edition 控制層的機密從屬端應用程式。
    1. 依序瀏覽至設定檔、識別網域及整合應用程式。
    2. 依序選取 「新增應用程式」按鈕、機密應用程式,然後選取啟動工作流程,並在提交以建立機密應用程式前提供名稱。
    3. 建立應用程式之後,請選取應用程式,然後瀏覽至 OAuth 組態頁籤。選取編輯 OAuth 組態。
    4. 選取下列「資源伺服器組態」選項:
      • 立即將此應用程式設定為資源伺服器
      • 允許重新整理權杖
      • 主要對象:obpee-cp
    5. 選取下列「從屬端組態」選項:
      • 立即將此應用程式設定為從屬端
      • 若為允許的授權型態,請選取
        • 資源擁有者
        • 重新整理權杖
        • 授權代碼
      • 客戶類型:機密
    6. 憑證:
      • 選取略過許可
      • 用戶端 IP 地址:任意位置
    7. 權杖擁有權杖的原則:
      • 授權的資源:全部
  3. 在網域中建立群組和使用者。依序瀏覽至設定檔、識別網域及使用者管理。

    如需有關群組及其使用方式的詳細資訊,請參閱使用者群組和角色。

  4. 設定 Oracle Blockchain Platform Enterprise Edition 控制層和服務主控台所需的重新導向 URI。
  5. 將使用者和群組指派給機密從屬端應用程式。依序導覽至機密應用程式、使用者和機密應用程式,然後依序導覽至群組以執行此動作。

設定群組宣告

若要將群組成員包括在存取權杖中:

  1. 開啟機密從屬端的 OAuth 組態。
  2. 新增識別網域管理員應用程式角色。
  3. 請使用管理員帳戶,透過權杖端點取得存取權杖。管理員必須屬於 IDCS_Administrators 和 OCI_Administrators 群組 (如果適用)。
  4. 使用存取權杖建立自訂存取權杖宣告。
curl -sS -X POST "https://<identity-domain-host>/admin/v1/CustomClaims" \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  --data-binary '{
    "schemas": ["urn:ietf:params:scim:schemas:oracle:idcs:CustomClaim"],
    "name": "group_roles",
    "value": "$user.groups.*.display",
    "expression": true,
    "mode": "always",
    "tokenType": "AT",
    "allScopes": true
  }'

使用 group_roles 作為 Oracle Blockchain Platform Enterprise Edition 組態中的群組宣告名稱。

設定 Oracle Blockchain Platform Enterprise Edition

在 Oracle Blockchain Platform Enterprise Edition 外部 OIDC 提供者組態中輸入身分識別提供者值。
  1. Open Blockchain Platform Manager,位於 https://controlplane.domainname/console/index.html。您的瀏覽器可能會警告您自行簽署的憑證。
  2. 使用您在安裝期間提供的 obpadmin 使用者名稱和密碼,登入 Blockchain Platform Manager。
  3. 在組態頁面上,選取認證伺服器。
  4. 選取新增身分識別提供者
  5. 完成新增身分識別提供者頁面中的下列組態欄位:
  6. 視需要完成群組名稱欄位。您可以在下列位置找到:群組
  7. 填入所有欄位後,按一下儲存並設為作用中。

確定網域設定值已啟用設定從屬端存取

確定網域設定值已啟用「設定從屬端存取」。若要驗證或啟用此項目:
  1. 存取 IDCS 主控台,網址為:
    <Domain-URL>/ui/v1/adminconsole
  2. 使用具備「識別網域管理員」角色 (或同等用戶 / 網域管理員權限) 的使用者登入。
  3. 瀏覽至設定值頁籤,然後至網域設定值 - 存取簽署憑證,並確定已啟用設定從屬端存取。
  4. 如果停用,請使用編輯網域設定值來啟用。

新增區塊鏈平台管理程式的重新導向 URL

登出區塊鏈平台管理程式之後,當您嘗試重新登入時,將會透過新的身分識別提供者進行。這需要您新增重新導向 URL。

例如,如果您使用 IDCS,請完成下列步驟:
  1. 登入 OCI 並前往 Identity and Security。
  2. 選取整合的應用程式。
  3. 選取您建立的機密應用程式。
  4. 選取 OAuth 組態,然後按一下編輯 OAuth 組態。
  5. 使用您區塊鏈平台管理程式 URL 的 URL,在清單中新增重導 URL。按一下送出。

備註:

  • 建立執行處理之後,您需要為區塊鏈平台主控台 URL 新增另一個重新導向。它是特定執行處理,必須等到建立執行處理之後才能新增。
  • 如果您部署範例應用程式,則必須為範例應用程式 URL 新增其他重新導向。