設定 OCI IAM 與 JumpCloud 之間的單一登入和使用者佈建

簡介

透過在 Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) 和 JumpCloud 之間設定單一登入 (SSO),OCI 管理員可以使用其 JumpCloud 證明資料順暢地登入 OCI 主控台。此外,透過佈建 RESTful API 的使用者,您可以實現從 JumpCloud 到 OCI 的即時使用者同步。

本教學課程示範如何透過設定安全宣告標記語言 (SAML) 同盟,以及跨網域識別管理 (SCIM) 2.0 連線的系統,將 OCI IAM 與 JumpCloud 整合。

OCI IAM 同盟與 JumpCloud (架構)。

此外,在建立 SSO 並同步識別之後,可以定義 OCI IAM 原則來設定各種 OCI 資源的存取控制。如需詳細資訊,請參閱原則入門深入瞭解以標記為基礎的 Oracle Cloud Infrastructure Identity and Access Management 原則

注意:此教學課程是 OCI IAM 與識別網域特定教學課程。

目標

必備條件

注意:在 JumpCloud 整合中使用 OCI 方案時,我們發現使用者建立 / 更新動作不一致。因此,為了本教學課程,我們將改用自訂應用程式。

第 1 節:設定存取管理的 SAML 型 SSO

JumpCloud 可作為身分識別提供者 (IdP)、認證使用者,以及安全地將認證權杖傳送至 OCI IAM,其可作為服務提供者 (SP)。若要設定 SAML 聯合,必須由雙方交換描述資料。

工作 1.1:從 OCI IAM 取得服務提供者描述資料

OCI IAM 識別網域中的 SP 描述資料會先匯出。

  1. 開啟瀏覽器頁籤,然後輸入 URL:https://cloud.oracle.com

  2. 輸入雲端帳戶名稱 (亦稱為租用戶名稱),然後按一下下一步

  3. 選取要登入的識別網域。這是用來設定 SSO 的識別網域,例如 Default

  4. 輸入管理員證明資料以登入 OCI 主控台。

  5. 導覽至識別與安全性,然後在識別下,按一下網域

    瀏覽至網域。

  6. 按一下識別網域的名稱。如果看不到網域,請變更區間以尋找正確的網域。

    選取網域。

  7. 安全性下,按一下身分識別提供者匯出 SAML 中繼資料

    瀏覽至 SP 描述資料。

  8. 選取中繼資料檔案。在含自行簽署憑證的描述資料底下,按一下下載 XML ,然後將此 XML 檔案儲存在電腦本機,這是 SP 描述資料。

    正在下載 SP 描述資料。

任務 1.2:建立 SSO 應用程式

在 JumpCloud 入口網站中建立 SSO 應用程式,以代表「OCI 主控台」。

  1. 在瀏覽器中,使用 URL 登入 JumpCloud 入口網站:https://console.jumpcloud.com/login

  2. 使用者授權下,選取 SSO 應用程式,然後按一下開始使用

    JumpCloud 管理主控台應用程式。

  3. 自訂應用程式下,按一下選取,然後按一下下一步

    正在搜尋自訂應用程式。

  4. 選取管理單一登入 (SSO) ,然後選取設定 SSO 與 SAML 。選取將使用者匯出至此 App (Identity Management) ,然後按一下下一步

    選取 SSO 和識別管理。

  5. 顯示標籤底下輸入名稱 (例如 OCI Console),然後按一下儲存應用程式。然後,按一下設定應用程式

    更新申請詳細資料。

工作 1.3:設定 SSO 應用程式

新建立的自訂應用程式需要 SSO 組態。

  1. SSO 頁籤的服務提供者中繼資料下,按一下上傳中繼資料,然後選取儲存於任務 1.1.8 中的服務點中繼資料檔案。

    正在上傳 SP 描述資料。

  2. 如果自動填入 SP 實體 IDACS URL ,則會正確剖析 XML 檔案。

    JumpCloud 中繼資料下,按一下匯出中繼資料,然後將此 XML 檔案儲存在電腦本機,這是 IdP 中繼資料。完成時,按一下儲存

    正在匯出 IdP 描述資料。

工作 1.4:啟用 JumpCloud 作為 OCI IAM 的 IdP

系統會建立一個代表 JumpCloud 的新 IdP。完成時,會設定 IdP 原則以啟用 SSO 認證。

  1. 在 OCI 主控台中,瀏覽至網域,選取安全性,然後按一下身分識別提供者

  2. 選取新增 IdP ,然後按一下新增 SAML IdP

    正在新增 SAML IdP。

  3. 輸入 SAML IdP 的名稱 (例如 JumpCloud),然後按下一步

    輸入 IdP 名稱。

  4. 請務必選取匯入 IdP 描述資料。在上傳身分識別提供者描述資料底下,從工作 1.3.2 上傳 IdP 描述資料,然後按下一步

    匯入 IdP 描述資料。

  5. 對應使用者識別中,輸入下列資訊,然後按下一步

    • 要求的 NameID 格式:選取
    • 識別提供者使用者屬性:選取 SAML 宣告名稱 ID
    • 識別網域使用者屬性:選取使用者名稱

    SAML 身分識別供應商屬性。

  6. 複查並建立中,驗證組態並按一下建立 IdP

    複查設定

  7. 按一下啟用,然後按一下新增至 IdP 原則

    啟用 IdP。

    注意:立即可用的網域中沒有任何關聯的 App,只有一個預設 IdP 原則。這基本上表示所有應用程式都落在此原則的範圍內,包括 OCI 主控台。如果網域有個別針對特定應用程式的自訂 IdP 原則,請務必視需要新增規則以定位 OCI 主控台。請小心執行,因為任何組態錯誤都會導致鎖定。

  8. 按一下建立 IdP 原則

    建立 IdP 原則。

  9. 新增原則中,輸入名稱 (例如 OCI Console),然後按一下新增原則

    輸入名稱。

  10. 新增身分識別提供者規則中,按一下新增 IdP 規則,然後輸入規則名稱。例如,OCI Console access rule

    指派身分識別提供者下,選取使用者名稱 - 密碼JumpCloud 。完成後,按一下新增 IdP 規則,然後按一下下一步

    定義規則

    注意:新增 Username-Password 選項以保留本機認證。這可避免在聯合設定值發生問題時鎖定。

  11. 按一下新增應用程式,搜尋並從清單中選取 OCI 主控台。按一下新增應用程式,然後按一下關閉

    選取 OCI 主控台應用程式。

第 2 節:設定以 SCIM 2.0 為基礎的使用者啟動設定

使用者生命週期管理是在 JumpCloud 與 OCI IAM 之間設定,其中 JumpCloud 會作為識別存放區。確定要啟動設定下游的所有使用者都已填入下列屬性的適當值:

注意:公司電子郵件與使用者名稱的對應可確保 SAML 主旨 /NameID 中的一致性,且 SSO 必須能夠運作。舉例而言:

><saml2:Subject><saml2:NameID Format="urn:oasis:names:tc:SAML:1.0:nameid-format:unspecified">XXX+test4@oracle.com</saml2:NameID>
   >

工作 2.1:在 OCI IAM 中建立機密應用程式並產生加密密碼記號

OAuth 2.0 從屬端已在 OCI IAM 中註冊。會啟用適當的流程並授予權限。系統會收集此從屬端的證明資料。

  1. 前往 OCI 主控台,瀏覽至網域,然後選取第 1 節中使用的網域。

  2. 前往整合的應用程式,選取新增應用程式機密應用程式,然後按一下啟動工作流程

    機密應用程式工作流程。

  3. 輸入機密應用程式的名稱 (例如 SCIMclient),然後按下一步

  4. 從屬端組態段落中,選取立即將此應用程式設定為從屬端,然後在授權底下,選取從屬端證明資料

    OAuth 2.0 用戶端設定。

  5. 選取新增應用程式角色,然後按一下新增角色。在新增應用程式角色頁面中,選取使用者管理員,然後按一下新增

    選取 App 角色。

  6. 下一步,然後按完成

  7. 按一下啟動以啟動新應用程式。

    啟動用戶端。

  8. 一般資訊段落中,記下從屬端 ID從屬端加密密碼,然後選取顯示加密密碼以顯示純文字。

    證明資料。

  9. 加密密碼記號是 clientIDclientsecret 的 base64 編碼。

    • 若為 Windows,請開啟 PowerShell,然後執行下列命令來產生 base64 編碼。

      [Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes("<clientID>:<clientsecret>”))
    • 對於 MacOS,請使用「終端機」來執行下列指令。

      echo -n <clientID>:<clientsecret> | base64

      傳回加密密碼記號。舉例而言:

      echo -n 392357752xxxx7523923457437:3454-9853-7843-3554 | base64
       Nk0NzUyMzxxxxxxxxxxxxxxxMzMtNTQzNC05ODc4LTUzNQ==

    最終。

  10. 請記下密碼記號。

工作 2.2:尋找 OCI IAM GUID

從屬端需有 SCIM 端點詳細資訊才能進行 API 呼叫。

  1. 前往 OCI 主控台,瀏覽至網域,然後選取第 1 節中使用的網域。

  2. 網域資訊中,選取網域 URL 旁邊的複製並記下此項目。它應該如下所示:

    https://<IdentityDomainID>.identity.oraclecloud.com:443
  3. 新增 /admin/v1 至 URL 的結尾。最後的 URL 應該如下所示:

    https://<IdentityDomainID>.identity.oraclecloud.com:443/admin/v1
  4. 請記下 URL。

工作 2.3:在 JumpCloud 應用程式中設定識別管理

移至 JumpCloud,會填入 SCIM 端點和 OAuth 2.0 證明資料。

  1. 開啟在任務 1.1.2 中建立的 SSO 應用程式,然後前往識別管理

  2. 輸入以下資訊並按一下測試連線

    • API 類型:選取 SCIM API
    • SCIM 版本:選取 SCIM 2.0
    • 基礎 URL:輸入工作 2.2.4 的基礎 URL。
    • 權杖金鑰:輸入從工作 2.1.10 產生的加密密碼權杖。
    • 測試使用者電子郵件:在 JumpCloud 目錄中輸入使用者的電子郵件。

    測試連線。

    注意:如果連線成功,則可使用 SCIM 使用者屬性自訂。群組預設會同步至 OCI,但可以透過關閉群組管理來變更。

  3. SCIM 屬性名稱中,按一下 + 新增屬性,以根據下列影像建立屬性對映。完成時,請按一下啟用

    正在啟用連線。

  4. 應該會收到要驗證之連線的相關通知。請按一下儲存

    儲存連線。

工作 2.4:將群組指派給 JumpCloud 應用程式

注意:先決條件為先在 JumpCloud 中建立 OCI 管理員群組後再繼續進行。

現在,需要存取 Oracle 資源的群組將與佈建一致。

  1. 開啟 SSO 應用程式,然後移至使用者群組頁籤。

  2. 選取需要佈建至 OCI 的群組,然後按一下儲存

    群組選擇。

第 3 節:測試與驗證

注意:若要讓 SSO 運作,OCI IAM 和 JumpCloud 中必須要有 SSO 使用者帳戶。

最後,會驗證同步的識別並測試聯合認證。

  1. 在 JumpCloud 和 OCI 主控台中開啟其中一個使用者,以驗證詳細資訊是否相符。

    JumpCloud 主控台。

    OCI 主控台。

  2. 重複相同的處理程序,以驗證群組是否已同步。

    JumpCloud 主控台。

    OCI 主控台。

注意:現在身分識別已同步化,我們會驗證 SSO 登入。

  1. 在新的瀏覽器視窗中,開啟 OCI 主控台。輸入雲端帳戶名稱 (亦稱為租用戶名稱),然後按一下下一步

  2. 選取已設定 JumpCloud 同盟的識別網域。

  3. Oracle Cloud 帳戶登入頁面中,選取 JumpCloud 。必須重新導向至 JumpCloud 登入頁面。

    OCI IAM 登入頁面

  4. 輸入同盟使用者的 JumpCloud 證明資料。認證成功時,應有重新導向回 OCI 主控台。

結論

此整合可讓管理員不需要管理個別的 OCI 證明資料、增強安全性,以及簡化存取管理。這也有助於身分識別管理,減少管理費用並消除冗餘。

確認

其他學習資源

docs.oracle.com/learn 上探索其他實驗室,或在 Oracle Learning YouTube 頻道上存取更多免費學習內容。此外,請造訪 education.oracle.com/learning-explorer 以成為 Oracle Learning Explorer。

如需產品文件,請造訪 Oracle Help Center