連線單點登入

訂閱: 商業版
要求: Docker Desktop 4.42 及更高版本
適用於: 管理員

設定單點登入 (SSO) 連線涉及同時配置 Docker 和您的身份提供商 (IdP)。本指南將引導您完成 Docker 中的設定、IdP 中的設定以及最終連線。

提示

您將在 Docker 和 IdP 之間複製和貼上值。請在一個會話中完成本指南,併為 Docker 和 IdP 分別開啟瀏覽器視窗。

先決條件

開始之前

  • 驗證您的域
  • 使用您的身份提供商 (IdP) 設定帳戶
  • 完成配置單點登入指南中的步驟

第一步:在 Docker 中建立 SSO 連線

注意

在建立 SSO 連線之前,您必須驗證至少一個域

  1. 登入 Docker Home 並選擇您的組織。
  2. 選擇管理控制檯,然後選擇SSO 和 SCIM
  3. 選擇建立連線併為連線提供一個名稱。
  4. 選擇一種身份驗證方法:SAMLAzure AD (OIDC)
  5. 複製您的 IdP 所需的值
    • Okta SAML:實體 IDACS URL
    • Azure OIDC:重定向 URL

保持此視窗開啟,以便稍後從您的 IdP 貼上值。

第二步:在您的 IdP 中建立 SSO 連線

根據您的 IdP 提供商使用以下選項卡。

  1. 登入您的 Okta 帳戶並開啟管理員門戶。
  2. 選擇管理,然後選擇建立應用整合
  3. 選擇SAML 2.0,然後選擇下一步
  4. 將您的應用命名為“Docker”。
  5. 可選。上傳一個標誌。
  6. 從 Docker 貼上值
    • Docker ACS URL -> 單點登入 URL
    • Docker 實體 ID -> 受眾 URI (SP 實體 ID)
  7. 配置以下設定
    • 名稱 ID 格式:EmailAddress
    • 應用程式使用者名稱:Email
    • 更新應用程式於:建立並更新
  8. 可選。新增 SAML 屬性。請參閱SSO 屬性
  9. 選擇“**下一步**”。
  10. 選中這是我們建立的內部應用複選框。
  11. 選擇完成
  1. 登入 Microsoft Entra(以前稱為 Azure AD)。
  2. 選擇預設目錄 > 新增 > 企業應用程式
  3. 選擇建立自己的應用程式,將其命名為“Docker”,並選擇非庫應用程式
  4. 建立應用後,轉到單點登入並選擇SAML
  5. 基本 SAML 配置部分選擇編輯
  6. 編輯基本 SAML 配置並從 Docker 貼上值
    • Docker 實體 ID -> 識別符號
    • Docker ACS URL -> 回覆 URL
  7. 可選。新增 SAML 屬性。請參閱SSO 屬性
  8. 儲存配置。
  9. SAML 簽名證書部分,下載您的證書 (Base64)

註冊應用

  1. 登入 Microsoft Entra(以前稱為 Azure AD)。
  2. 選擇應用註冊 > 新註冊
  3. 將應用程式命名為“Docker”。
  4. 設定帳戶型別並從 Docker 貼上重定向 URI
  5. 選擇註冊
  6. 複製客戶端 ID

建立客戶端金鑰

  1. 在您的應用中,轉到證書和金鑰
  2. 選擇新建客戶端金鑰,描述並配置持續時間,然後新增
  3. 複製新金鑰的

設定 API 許可權

  1. 在您的應用中,轉到API 許可權
  2. 選擇授予管理員同意並確認。
  3. 選擇新增許可權 > 委託許可權
  4. 搜尋並選擇User.Read
  5. 確認已授予管理員同意。

第三步:將 Docker 連線到您的 IdP

透過將您的 IdP 值貼上到 Docker 中來完成整合。

  1. 在 Okta 中,選擇您的應用並轉到檢視 SAML 設定說明

  2. 複製SAML 登入 URLx509 證書

    重要

    複製整個證書,包括----BEGIN CERTIFICATE--------END CERTIFICATE----行。

  3. 返回 Docker 管理控制檯。

  4. 貼上SAML 登入 URLx509 證書值。

  5. 可選。選擇一個預設團隊。

  6. 檢視並選擇建立連線

  1. 在文字編輯器中開啟您下載的證書 (Base64)

  2. 複製以下值

    • 來自 Azure AD:登入 URL
    • 證書 (Base64)內容
    重要

    複製整個證書,包括----BEGIN CERTIFICATE--------END CERTIFICATE----行。

  3. 返回 Docker 管理控制檯。

  4. 貼上登入 URL證書 (Base64)值。

  5. 可選。選擇一個預設團隊。

  6. 檢視並選擇建立連線

  1. 返回 Docker 管理控制檯。
  2. 貼上以下值
    • 客戶端 ID
    • 客戶端金鑰
    • Azure AD 域
  3. 可選。選擇一個預設團隊。
  4. 檢視並選擇建立連線

第四步:測試連線

  1. 開啟一個隱身瀏覽器視窗。
  2. 使用您的域電子郵件地址登入管理控制檯。
  3. 瀏覽器將重定向到您的身份提供商的登入頁面進行身份驗證。如果您有多個 IdP,請選擇登入選項繼續使用 SSO
  4. 透過您的域電子郵件進行身份驗證,而不是使用您的 Docker ID。

如果您使用的是 CLI,則必須使用個人訪問令牌進行身份驗證。

可選:配置多個 IdP

Docker 支援多個 IdP 配置。要將多個 IdP 與一個域一起使用

  • 對每個 IdP 重複本頁面上的步驟 1-4。
  • 每個連線必須使用相同的域。
  • 使用者將選擇繼續使用 SSO在登入時選擇他們的 IdP。

可選:強制執行 SSO

重要

如果未強制執行 SSO,使用者仍然可以使用 Docker 使用者名稱和密碼登入。

強制執行 SSO 要求使用者在登入 Docker 時使用 SSO。這可以集中身份驗證並強制執行 IdP 設定的策略。

  1. 登入 Docker Home 並選擇您的組織或公司。
  2. 選擇管理控制檯,然後選擇SSO 和 SCIM
  3. 在 SSO 連線表中,選擇操作選單,然後選擇啟用強制執行
  4. 按照螢幕上的說明操作。
  5. 選擇開啟強制執行

當強制執行 SSO 時,您的使用者將無法修改其電子郵件地址和密碼、將使用者帳戶轉換為組織,或透過 Docker Hub 設定 2FA。如果您想使用 2FA,則必須透過您的 IdP 啟用 2FA。

後續步驟