與來賓使用者的 SAML/WS-Fed 識別提供者同盟

注意

  • Microsoft Entra 外部 ID 中的直接同盟現在稱為 SAML/WS-Fed 識別提供者 (IdP) 同盟

本文說明如何設定與識別提供者 (IdP) 支援 SAML 2.0 或 WS-Fed 通訊協定的任何組織同盟。 當您設定與合作夥伴的IdP同盟時,來自該網域的新來賓使用者可以使用自己的IdP管理組織帳戶登入您的 Microsoft Entra 租使用者,並開始與您共同作業。 來賓使用者不需要建立個別的 Microsoft Entra 帳戶。

重要

  • 您現在可以設定 SAML/WS-Fed IdP 與 Microsoft Entra ID 驗證網域的同盟,並 設定邀請兌換訂單 ,以確保當受邀的使用者登入時,他們會使用同盟 IdP 兌換其邀請,而不是 Microsoft Entra ID。 兌換訂單 設定可用於輸入 B2B 共同作業的跨租使用者存取設定。
  • 我們不再支援新的 SAML/WS-Fed IdP 同盟的 IdP 允許清單。 當您設定新的外部同盟時,請參閱 步驟 1:判斷合作夥伴是否需要更新其 DNS 文字記錄
  • 在 Microsoft Entra ID 針對外部同盟傳送的 SAML 要求中,簽發者 URL 是租使用者端點。 針對任何新的同盟,我們建議所有合作夥伴將SAML或WS Fed型IdP的物件設定為租使用者端點。 請參閱 SAML 2.0WS-Fed 所需的屬性和宣告區段。 任何使用全域端點設定的現有同盟都會繼續運作,但如果您的外部IdP預期SAML要求中有全域簽發者URL,新的同盟將會停止運作。
  • 我們已移除單一網域限制。 您現在可以建立多個網域與個別同盟設定的關聯。
  • 我們已移除要求驗證 URL 網域符合目標網域或來自允許 IdP 的限制。 如需詳細資訊,請參閱 步驟 1:判斷合作夥伴是否需要更新其 DNS 文字記錄

來賓使用者何時向 SAML/WS-Fed IdP 同盟進行驗證?

設定與組織的 SAML/WS-Fed IdP 同盟之後:

請務必注意,若來賓使用者早已兌換您所提出的邀請,則設定同盟並不會變更其驗證方法。 以下列出一些範例:

  • 來賓使用者已從您兌換邀請,然後稍後您與組織的 SAML/WS-Fed IdP 設定同盟。 在您設定同盟之前,這些來賓使用者會繼續使用他們所使用的相同驗證方法。
  • 您設定與組織的 SAML/WS-Fed IdP 同盟,並邀請來賓使用者,然後合作夥伴組織稍後移至 Microsoft Entra ID。 只要租用戶中有同盟原則,已兌換邀請的來賓使用者就會繼續使用同盟 SAML/WS-Fed IdP。
  • 您可以刪除與組織的 SAML/WS-Fed IdP 同盟。 目前使用 SAML/WS-Fed IdP 的任何來賓使用者都無法登入。

在這些案例中,您可以藉由 重設其兌換狀態來更新來賓用戶的驗證方法。

SAML/WS-Fed IdP 同盟會繫結至網域命名空間,例如 contoso.com 與 fabrikam.com。 建立與 AD FS 或第三方 IdP 的同盟時,組織會將一或多個網域命名空間與這些 IdP 建立關聯。

終端使用者體驗

有了 SAML/WS-Fed 同盟,來賓使用者可以使用自己的組織帳戶來登入 Microsoft Entra 租用戶。 當使用者在存取共用資源並收到登入提示時,系統會將他們重新導向至其 IdP。 成功登入之後,使用者會返回 Microsoft Entra ID 以存取資源。 如果 Microsoft Entra 工作階段過期或變成無效,且同盟 IdP 已啟用 SSO,則使用者會遇到 SSO。 如果同盟使用者的工作階段有效,則不會提示使用者再次登入。 否則,系統會將使用者重新導向至其 IdP 以進行登入。

登入端點

SAML/WS-Fed IdP 同盟來賓用戶現在可以使用通用端點登入您的多租使用者或 Microsoft 第一方應用程式(換句話說,一般應用程式 URL 不包含您的租用戶內容)。 在登入過程中,來賓用戶選擇 [登入] 選項,然後選取 [登入組織]。 然後,使用者輸入組織的名稱,然後使用自己的認證繼續登入。

SAML/WS-Fed IdP 同盟來賓使用者也可以使用包含租使用者資訊的應用程式端點,例如:

  • https://myapps.microsoft.com/?tenantid=<your tenant ID>
  • https://myapps.microsoft.com/<your verified domain>.onmicrosoft.com
  • https://portal.azure.com/<your tenant ID>

您也可以藉由包含租使用者資訊,為來賓使用者提供應用程式或資源的直接連結,例如 https://myapps.microsoft.com/signin/Twitter/<application ID?tenantId=<your tenant ID>

常見問題集

我可以設定 SAML/WS-Fed IdP 與 Microsoft Entra ID 驗證網域的同盟嗎?

是,您現在可以設定 SAML/WS-Fed IdP 與其他 Microsoft Entra ID 已驗證網域的同盟。 這包括已驗證的網域,其中租使用者已接受 系統管理員接管。 如果您同盟的網域已驗證 Microsoft Entra ID,您也必須在輸入 B2B 共同作業的跨租使用者存取設定中設定兌換訂單設定(預覽),以確保當受邀的使用者登入時,他們會使用同盟 IdP 兌換其邀請,而不是 Microsoft Entra ID。

目前,雲端不支持兌換訂單設定。 如果您與同盟的網域是在不同的 Microsoft 雲端中驗證 Microsoft Entra 識別符,Microsoft Entra 兌換一律優先。

我可以設定 SAML/WS-Fed IdP 同盟與非受控租使用者所在的網域嗎?

是,您可以設定 SAML/WS-Fed IdP 與未在 Microsoft Entra 標識符中驗證 DNS 的網域同盟,包括 Unmanaged(電子郵件驗證或「病毒式」)Microsoft Entra 租使用者。 當使用者使用目前不存在的網域兌換 B2B 邀請或執行 Microsoft Entra ID 的自助式註冊時,就會建立這類租使用者。

我可以建立多少個同盟關聯性?

目前,支援最大 1,000 個同盟關聯。 此限制包括 內部同盟 和 SAML/WS-Fed IdP 同盟。

我可以設定與相同租使用者中多個網域的同盟嗎?

是,我們現在支援 SAML/WS-Fed IdP 與來自相同租使用者的多個網域同盟。

我需要在簽署憑證到期時更新嗎?

如果您在IdP設定中指定元數據 URL,Microsoft Entra ID 會在簽署憑證到期時自動更新。 不過,如果憑證在到期時間之前因任何原因而輪替,或您未提供元數據 URL,Microsoft Entra ID 將無法更新它。 在此情況下,您必須手動更新簽署憑證。

如果同時啟用 SAML/WS-Fed IdP 同盟和電子郵件單次密碼驗證,哪一種方法優先?

當 SAML/WS-Fed IdP 同盟與合作夥伴組織建立時,優先於來自該組織的新來賓使用者的電子郵件單次密碼驗證。 如果在設定 SAML/WS-Fed IdP 同盟之前,來賓使用者已使用一次性密碼驗證兌換邀請,他們就會繼續使用單次密碼驗證。

SAML/WS-Fed IdP 同盟會因部分同步租用而解決登入問題嗎?

否, 此案例中應該使用電子郵件一次性密碼 功能。 「部分同步租用」是指內部部署使用者身分識別未完全同步至雲端的合作夥伴 Microsoft Entra 租使用者。 身分識別尚未存在於雲端但嘗試兌換 B2B 邀請的來賓無法登入。 單次密碼功能可讓此來賓登入。 SAML/WS-Fed IdP 同盟功能可解決來賓有自己的 IdP 管理組織帳戶,但組織完全沒有 Microsoft Entra 的案例。

SAML/WS-Fed IdP 同盟設定為組織之後,是否需要傳送每個來賓並兌換個別邀請?

邀請新來賓時,您仍然需要傳送邀請或提供直接連結,以便來賓完成兌換步驟。 對於現有的來賓,您不一定需要傳送新的邀請。 現有的來賓會繼續使用他們在設定同盟之前所使用的驗證方法。 如果您想要讓這些來賓開始使用同盟進行驗證,您可以 重設其兌換狀態。 然後,下次他們存取您的應用程式或使用邀請中的連結時,他們會重複兌換程式,並開始使用同盟作為其驗證方法。

是否有方法可傳送已簽署的要求給 SAML 識別提供者?

目前,Microsoft Entra SAML/WS-Fed 同盟功能不支援將已簽署的驗證令牌傳送至 SAML 識別提供者。

設定 SAML/Ws-Fed 識別提供者需要哪些許可權?

您必須是外部識別提供者 管理員 istrator 或 Microsoft Entra 租使用者中的全域 管理員 istrator,才能設定 SAML/Ws-Fed 識別提供者。

步驟 1:判斷合作夥伴是否需要更新其 DNS 文字記錄

根據合作夥伴的IdP,合作夥伴可能需要更新其 DNS 記錄,以啟用與您同盟。 使用下列步驟來判斷是否需要 DNS 更新。

注意

我們不再支援新的 SAML/WS-Fed IdP 同盟的 IdP 允許清單。

  1. 檢查合作夥伴的 IdP 被動驗證 URL,以查看網域是否符合目標網域或目標網域內的主機。 換句話說,設定 的 fabrikam.com同盟時:

    • 如果被動驗證端點為 https://fabrikam.comhttps://sts.fabrikam.com/adfs (相同網域中的主機),則不需要 DNS 變更。
    • 如果被動驗證端點為 https://fabrikamconglomerate.com/adfshttps://fabrikam.com.uk/adfs,則網域不符合 fabrikam.com 網域,因此合作夥伴必須將驗證 URL 的文字記錄新增至其 DNS 組態。
  2. 如果根據上一個步驟需要 DNS 變更,請要求合作夥伴將 TXT 記錄新增至其網域的 DNS 記錄,如下列範例所示:

    fabrikam.com.  IN   TXT   DirectFedAuthUrl=https://fabrikamconglomerate.com/adfs

步驟 2:設定合作夥伴組織的 IdP

接下來,您的合作夥伴組織必須使用必要的宣告和信賴憑證者信任來設定其IdP。

注意

為了說明如何設定 SAML/WS-Fed IdP 進行同盟,我們將使用 Active Directory 同盟服務 (AD FS) 作為範例。 請參閱設定 SAML/WS-Fed IdP 與 AD FS 同盟一文 ,其中提供如何將 AD FS 設定為 SAML 2.0 或 WS-Fed IdP 以準備同盟的範例。

SAML 2.0 設定

Microsoft Entra B2B 可以設定為與使用 SAML 通訊協議與本節所列特定需求的 IdP 同盟。 如需設定 SAML IdP 與 Microsoft Entra ID 之間信任的詳細資訊,請參閱 使用 SAML 2.0 識別提供者 (IdP) for SSO

注意

您現在可以設定 SAML/WS-Fed IdP 與其他 Microsoft Entra ID 已驗證網域的同盟。 如需詳細資訊,請參閱常見問題一節。

必要的 SAML 2.0 屬性和宣告

下表顯示必須在第三方 IdP 設定的特定屬性和宣告需求。 若要設定同盟,必須在來自IdP的SAML 2.0回應中收到下列屬性。 這定這些屬性的方式可以是連結至線上安全性權杖服務 XML 檔案,或手動輸入。

注意

請確定值符合您要設定外部同盟的雲端。

IdP 中 SAML 2.0 回應的必要屬性為:

屬性
AssertionConsumerService https://login.microsoftonline.com/login.srf
適用對象 https://login.microsoftonline.com/<tenant ID>/ (建議)將 取代 <tenant ID> 為您設定同盟的 Microsoft Entra 租使用者的租用戶識別碼。

在 Microsoft Entra ID 針對外部同盟傳送的 SAML 要求中,簽發者 URL 是租使用者端點(例如 , https://login.microsoftonline.com/<tenant ID>/。 針對任何新的同盟,我們建議所有合作夥伴將SAML或WS Fed型IdP的物件設定為租使用者端點。 任何使用全域端點設定的現有同盟 (例如 urn:federation:MicrosoftOnline, ) 都會繼續運作,但如果您的外部 IdP 預期 Microsoft Entra IDA ID 所傳送的 SAML 要求中有全域簽發者 URL,新的同盟將會停止運作。
簽發者 合作夥伴 IdP 的簽發者 URI,例如 http://www.example.com/exk10l6w90DHM0yi...

IdP 所發行 SAML 2.0 權杖的必要屬性為:

屬性名稱
NameID Format urn:oasis:names:tc:SAML:2.0:nameid-format:persistent
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress emailaddress

WS-Fed 設定

Microsoft Entra B2B 可以設定為與使用 WS-Fed 通訊協定的 IdP 同盟。 本節討論需求。 目前,兩個 WS-同盟提供者已經過 Microsoft Entra ID 的相容性測試,包含 AD FS 與 Shibboleth。 如需使用 Microsoft Entra 識別符在 WS Fed 相容提供者之間建立信賴憑證者信任的詳細資訊,請參閱 Microsoft Entra 識別提供者相容性檔中提供的<使用 WS 通訊協定的 STS 整合檔>

注意

您現在可以設定 SAML/WS-Fed IdP 與其他 Microsoft Entra ID 已驗證網域的同盟。 如需詳細資訊,請參閱常見問題一節。

必要的 WS-Fed 屬性和宣告

下表顯示必須在第三方 WS-Fed IdP 設定的特定屬性和宣告需求。 若要設定同盟,必須在IdP的 WS-Fed 訊息中接收下列屬性。 這定這些屬性的方式可以是連結至線上安全性權杖服務 XML 檔案,或手動輸入。

注意

請確定值符合您要設定外部同盟的雲端。

IdP 的 WS-同盟訊息中的必要屬性:

屬性
PassiveRequestorEndpoint https://login.microsoftonline.com/login.srf
適用對象 https://login.microsoftonline.com/<tenant ID>/ (建議)將 取代 <tenant ID> 為您設定同盟的 Microsoft Entra 租使用者的租用戶識別碼。

在 Microsoft Entra ID 針對外部同盟傳送的 SAML 要求中,簽發者 URL 是租使用者端點(例如 , https://login.microsoftonline.com/<tenant ID>/。 針對任何新的同盟,我們建議所有合作夥伴將SAML或WS Fed型IdP的物件設定為租使用者端點。 任何使用全域端點設定的現有同盟 (例如 urn:federation:MicrosoftOnline, ) 都會繼續運作,但如果您的外部 IdP 預期 Microsoft Entra IDA ID 所傳送的 SAML 要求中有全域簽發者 URL,新的同盟將會停止運作。
簽發者 合作夥伴 IdP 的簽發者 URI,例如 http://www.example.com/exk10l6w90DHM0yi...

IdP 所發行 WS-同盟權杖的必要屬性為:

屬性
ImmutableID http://schemas.microsoft.com/LiveID/Federation/2008/05/ImmutableID
emailaddress http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress

步驟 3:在 Microsoft Entra ID 中設定 SAML/WS-Fed IdP 同盟

接下來,使用 Microsoft Entra ID 的步驟 1 中所設定的 IdP 設定同盟。 您可以使用 Microsoft Entra 系統管理中心或 Microsoft Graph API。 同盟原則生效可能需要 5-10 分鐘的時間。 在此期間,請勿嘗試兌換同盟網域的邀請。 需要下列屬性:

  • 合作夥伴 IdP 的簽發者 URI
  • 合作夥伴 IdP 的被動驗證端點(僅支援 HTTPs)
  • [MSSQLSERVER 的通訊協定內容]

在 Microsoft Entra 系統管理中心設定同盟

提示

本文中的步驟可能會根據您從開始的入口網站稍有不同。

  1. 以至少外部識別提供者系統管理員身分登入 Microsoft Entra 系統管理中心

  2. 流覽至 [身分>識別外部身分>識別] [所有識別提供者]。

  3. 選取 [新增 SAML/WS-Fed IdP]。

    顯示新增 SAML 或 WS-Fed IdP 按鈕的螢幕快照。

  4. 在 [ 新增 SAML/WS-Fed IdP ] 頁面上,輸入下列內容:

    • 顯示名稱 - 輸入名稱以協助您識別合作夥伴的 IdP。
    • 識別提供者通訊協定 - 選取 [SAML ] 或 [WS-Fed]。
    • 同盟IdP 的功能變數名稱 - 輸入合作夥伴的IdP目標功能變數名稱進行同盟。 在此初始設定期間,只輸入一個功能變數名稱。 您稍後可以新增更多網域。

    顯示新 SAML 或 WS-Fed IdP 頁面的螢幕快照。

  5. 選取填入元數據的方法。 您可以 手動輸入元數據,或者如果您有包含元數據的檔案,您可以選取 [剖析元數據檔案 ] 並瀏覽檔案來自動填入字段。

    • 簽發者 URI - 合作夥伴 IdP 的簽發者 URI。
    • 被動驗證端點 - 合作夥伴 IdP 的被動要求者端點。
    • 憑證 - 簽署憑證標識碼。
    • 元數據 URL - IdP 元數據的位置,用於自動更新簽署憑證。

    顯示元數據欄位的螢幕快照。

    注意

    元數據 URL 是選擇性的,但強烈建議您使用。 如果您提供元數據 URL,Microsoft Entra ID 可以在簽署憑證到期時自動更新。 如果憑證在到期時間之前因任何原因輪替,或您未提供元數據 URL,Microsoft Entra ID 將無法更新它。 在此情況下,您將必須手動更新簽署憑證。

  6. 選取 [儲存]。 身分識別提供者會新增至 SAML/WS-Fed 識別提供者 清單。

    顯示 SAML/WS-Fed 識別提供者清單與新項目的螢幕快照。

  7. (選擇性)若要將此同盟識別提供者新增更多域名:

    1. 選取 [ 網域] 資料行中的連結。

      此螢幕快照顯示將網域新增至SAML/WS-Fed 識別提供者的連結。

    2. 同盟IdP的 [功能變數名稱] 旁,輸入功能變數名稱,然後選取[ 新增]。 針對您想要新增的每個網域重複。 完成之後,選取 [完成]

      顯示 [網域詳細數據] 窗格中 [新增] 按鈕的螢幕快照。

使用 Microsoft Graph API 設定同盟

您可以使用 Microsoft Graph API samlOrWsFedExternalDomainFederation 資源類型,設定與支援 SAML 或 WS-Fed 通訊協定的識別提供者同盟。

步驟 4:設定 Microsoft Entra ID 已驗證網域的兌換訂單

如果網域已驗證 Microsoft Entra ID,請在輸入 B2B 共同作業的跨租使用者存取設定中設定兌換訂單設定。 將 SAML/WS-Fed 識別提供者移至主要識別提供者清單頂端,以優先使用同盟 IdP 進行兌換。

注意

可設定兌換功能的 Microsoft Entra 系統管理中心設定目前已推出給客戶。 在系統管理中心提供設定之前,您可以使用 Microsoft Graph REST API(Beta 版本)來設定邀請兌換訂單。 請參閱 Microsoft Graph 參考檔中的範例 2:更新預設邀請兌換 設定。

步驟 5:在 Microsoft Entra ID 中測試 SAML/WS-Fed IdP 同盟

現在,請邀請新的 B2B 來賓用戶來測試您的同盟設定。 如需詳細資訊,請參閱 在 Microsoft Entra 系統管理中心新增 Microsoft Entra B2B 共同作業使用者。

如何? 更新憑證或組態詳細數據嗎?

在 [ 所有識別提供者 ] 頁面上,您可以檢視您已設定的 SAML/WS-Fed 識別提供者清單及其憑證到期日。 在此清單中,您可以更新憑證並修改其他組態詳細數據。

顯示 SAML WS-Fed 清單中識別提供者的螢幕快照

  1. 以至少外部識別提供者系統管理員身分登入 Microsoft Entra 系統管理中心

  2. 流覽至 [身分>識別外部身分>識別] [所有識別提供者]。

  3. 在 [SAML/WS-Fed 識別提供者] 下,捲動至清單中的識別提供者,或使用搜尋方塊。

  4. 若要更新憑證或修改組態詳細數據:

    • 在識別提供者的 [組態] 資料行中,選取 [編輯] 連結。
    • 在組態頁面上,修改下列任何詳細數據:
      • 顯示名稱 -合作夥伴組織的顯示名稱。
      • 識別提供者通訊協定 - 選取 [SAML ] 或 [WS-Fed]。
      • 被動驗證端點 - 合作夥伴 IdP 的被動要求者端點。
      • 憑證 - 簽署憑證的標識碼。 若要更新它,請輸入新的憑證標識碼。
      • 元數據 URL - 包含夥伴元數據的 URL,用於自動更新簽署憑證。
    • 選取 [儲存]。

    IDP 組態詳細數據的螢幕快照。

  5. 若要編輯與合作夥伴相關聯的網域,請選取 [ 網域 ] 數據行中的連結。 在 [網域詳細資料] 窗格中:

    • 若要新增網域,請輸入同盟IdP功能變數名稱旁的功能變數名稱,然後選取[新增]。 針對您想要新增的每個網域重複。
    • 若要刪除網域,請選取網域旁的刪除圖示。
    • 完成之後,選取 [完成]

    網域設定頁面的螢幕快照

    注意

    若要移除與合作夥伴的同盟,請刪除其中一個網域,並遵循下一節中的步驟。

如何? 移除同盟嗎?

您可以移除同盟設定。 如果您這樣做,已兌換其邀請的同盟來賓用戶無法再登入。 但是您可以重設兌換狀態,讓他們再次存取您的資源。 若要在 Microsoft Entra 系統管理中心移除 IdP 的設定:

  1. 以至少外部識別提供者系統管理員身分登入 Microsoft Entra 系統管理中心

  2. 流覽至 [身分>識別外部身分>識別] [所有識別提供者]。

  3. 在 [SAML/WS-Fed 識別提供者] 下,捲動至清單中的識別提供者,或使用搜尋方塊。

  4. 選取 [ 網域 ] 數據行中的連結,以檢視IdP的網域詳細數據。

  5. 刪除 [功能變數名稱] 清單中除了其中一個網域

  6. 選取 [ 刪除組態],然後選取 [ 完成]。

    刪除設定的螢幕快照。

  7. 選取 [ 確定 ] 以確認刪除。

您也可以使用 Microsoft Graph API samlOrWsFedExternalDomainFederation 資源類型移除同盟。

下一步

深入瞭解 外部用戶以各種身分識別提供者登入時的邀請兌換體驗