連線單點登入
設定單點登入 (SSO) 連線涉及同時配置 Docker 和您的身份提供商 (IdP)。本指南將引導您完成 Docker 中的設定、IdP 中的設定以及最終連線。
提示您將在 Docker 和 IdP 之間複製和貼上值。請在一個會話中完成本指南,併為 Docker 和 IdP 分別開啟瀏覽器視窗。
先決條件
開始之前
- 驗證您的域
- 使用您的身份提供商 (IdP) 設定帳戶
- 完成配置單點登入指南中的步驟
第一步:在 Docker 中建立 SSO 連線
注意在建立 SSO 連線之前,您必須驗證至少一個域。
- 登入 Docker Home 並選擇您的組織。
- 選擇管理控制檯,然後選擇SSO 和 SCIM。
- 選擇建立連線併為連線提供一個名稱。
- 選擇一種身份驗證方法:SAML 或 Azure AD (OIDC)。
- 複製您的 IdP 所需的值
- Okta SAML:實體 ID、ACS URL
- Azure OIDC:重定向 URL
保持此視窗開啟,以便稍後從您的 IdP 貼上值。
第二步:在您的 IdP 中建立 SSO 連線
根據您的 IdP 提供商使用以下選項卡。
- 登入您的 Okta 帳戶並開啟管理員門戶。
- 選擇管理,然後選擇建立應用整合。
- 選擇SAML 2.0,然後選擇下一步。
- 將您的應用命名為“Docker”。
- 可選。上傳一個標誌。
- 從 Docker 貼上值
- Docker ACS URL -> 單點登入 URL
- Docker 實體 ID -> 受眾 URI (SP 實體 ID)
- 配置以下設定
- 名稱 ID 格式:
EmailAddress
- 應用程式使用者名稱:
Email
- 更新應用程式於:
建立並更新
- 名稱 ID 格式:
- 可選。新增 SAML 屬性。請參閱SSO 屬性。
- 選擇“**下一步**”。
- 選中這是我們建立的內部應用複選框。
- 選擇完成。
- 登入 Microsoft Entra(以前稱為 Azure AD)。
- 選擇預設目錄 > 新增 > 企業應用程式。
- 選擇建立自己的應用程式,將其命名為“Docker”,並選擇非庫應用程式。
- 建立應用後,轉到單點登入並選擇SAML。
- 在基本 SAML 配置部分選擇編輯。
- 編輯基本 SAML 配置並從 Docker 貼上值
- Docker 實體 ID -> 識別符號
- Docker ACS URL -> 回覆 URL
- 可選。新增 SAML 屬性。請參閱SSO 屬性。
- 儲存配置。
- 在SAML 簽名證書部分,下載您的證書 (Base64)。
註冊應用
- 登入 Microsoft Entra(以前稱為 Azure AD)。
- 選擇應用註冊 > 新註冊。
- 將應用程式命名為“Docker”。
- 設定帳戶型別並從 Docker 貼上重定向 URI。
- 選擇註冊。
- 複製客戶端 ID。
建立客戶端金鑰
- 在您的應用中,轉到證書和金鑰。
- 選擇新建客戶端金鑰,描述並配置持續時間,然後新增。
- 複製新金鑰的值。
設定 API 許可權
- 在您的應用中,轉到API 許可權。
- 選擇授予管理員同意並確認。
- 選擇新增許可權 > 委託許可權。
- 搜尋並選擇
User.Read
。 - 確認已授予管理員同意。
第三步:將 Docker 連線到您的 IdP
透過將您的 IdP 值貼上到 Docker 中來完成整合。
在 Okta 中,選擇您的應用並轉到檢視 SAML 設定說明。
複製SAML 登入 URL和x509 證書。
重要複製整個證書,包括
----BEGIN CERTIFICATE----
和----END CERTIFICATE----
行。返回 Docker 管理控制檯。
貼上SAML 登入 URL和x509 證書值。
可選。選擇一個預設團隊。
檢視並選擇建立連線。
在文字編輯器中開啟您下載的證書 (Base64)。
複製以下值
- 來自 Azure AD:登入 URL
- 證書 (Base64)內容
重要複製整個證書,包括
----BEGIN CERTIFICATE----
和----END CERTIFICATE----
行。返回 Docker 管理控制檯。
貼上登入 URL和證書 (Base64)值。
可選。選擇一個預設團隊。
檢視並選擇建立連線。
- 返回 Docker 管理控制檯。
- 貼上以下值
- 客戶端 ID
- 客戶端金鑰
- Azure AD 域
- 可選。選擇一個預設團隊。
- 檢視並選擇建立連線。
第四步:測試連線
- 開啟一個隱身瀏覽器視窗。
- 使用您的域電子郵件地址登入管理控制檯。
- 瀏覽器將重定向到您的身份提供商的登入頁面進行身份驗證。如果您有多個 IdP,請選擇登入選項繼續使用 SSO。
- 透過您的域電子郵件進行身份驗證,而不是使用您的 Docker ID。
如果您使用的是 CLI,則必須使用個人訪問令牌進行身份驗證。
可選:配置多個 IdP
Docker 支援多個 IdP 配置。要將多個 IdP 與一個域一起使用
- 對每個 IdP 重複本頁面上的步驟 1-4。
- 每個連線必須使用相同的域。
- 使用者將選擇繼續使用 SSO在登入時選擇他們的 IdP。
可選:強制執行 SSO
重要如果未強制執行 SSO,使用者仍然可以使用 Docker 使用者名稱和密碼登入。
強制執行 SSO 要求使用者在登入 Docker 時使用 SSO。這可以集中身份驗證並強制執行 IdP 設定的策略。
- 登入 Docker Home 並選擇您的組織或公司。
- 選擇管理控制檯,然後選擇SSO 和 SCIM。
- 在 SSO 連線表中,選擇操作選單,然後選擇啟用強制執行。
- 按照螢幕上的說明操作。
- 選擇開啟強制執行。
當強制執行 SSO 時,您的使用者將無法修改其電子郵件地址和密碼、將使用者帳戶轉換為組織,或透過 Docker Hub 設定 2FA。如果您想使用 2FA,則必須透過您的 IdP 啟用 2FA。