應用程式的首頁領域探索 (Home Realm Discovery)
首頁領域探索 (HRD) 是讓 Microsoft Entra ID 判斷單一登入時,使用者要驗證哪個識別提供者 (IDP) 的流程。 使用者在登入 Microsoft Entra 租用戶以存取資源或 Microsoft Entra 一般登入頁面時,會輸入使用者名稱 (UPN)。 Microsoft Entra ID 會使用該值來探索使用者需在何處登入。
系統會將使用者帶至下列其中一個識別提供者進行驗證:
使用者的主租用戶 (可能與使用者嘗試存取之資源的租用戶相同)。
Microsoft 帳戶。 使用者是資源租用戶中的來賓,使用取用者帳戶進行驗證。
內部部署身分識別提供者,例如 Active Directory 同盟服務 (AD FS)。
與 Microsoft Entra 租用戶同盟的另一個身分識別提供者。
自動加速
部分組織將 Microsoft Entra 租用戶中的網域設為與另一個 IdP 同盟,例如使用者驗證的 AD FS。
使用者在登入應用程式時將會先看到 Microsoft Entra 登入頁面。 如果使用者是在同盟網域中,則輸入 UPN 後,系統便會將其導向提供該網域的 IdP 登入頁面。 在某些情況下,系統管理員在使用者登入特定應用程式時可能會想要將其導向至登入頁面。
因此,使用者可以跳過初始的 Microsoft Entra ID 頁面。 此程序稱為「登入自動加速」Microsoft 建議您不要再設定自動加速,因為這可能會妨礙 FIDO 等增強式驗證方法的使用,並阻礙共同作業。 請參閱啟用無密碼安全性金鑰登入,了解不設定自動加速的優點。 若要了解如何防止登入自動加速,請參閱停用自動加速登入。
當租用戶與另一個用於登入的 IdP 同盟時,自動加速可簡化使用者的登入程序。 您可以為個別的應用程式設定自動加速。 請參閱設定自動加速,了解如何使用 HRD 強制執行自動加速。
注意
如果應用程式設為自動加速,使用者即無法使用受控認證 (例如 FIDO),而來賓使用者也無法登入。 如果使用者直接導向同盟 IdP 進行驗證時,即無法回到 Microsoft Entra 單一登入頁面。 來賓使用者可能會需要導向其他租用戶或外部 IdP (例如 Microsoft 帳戶),而跳過 HRD 步驟會導致他們無法登入該應用程式。
有三種方式可以控制同盟 IdP 的自動加速:
[登入確認] 對話方塊
從 2023 年 4 月開始,使用自動加速或智慧連結的組織可能會開始看到已新增至登入 UI 的新畫面。 此畫面稱為「網域確認對話框」,是Microsoft安全性強化的一般承諾的一部分,需要使用者確認他們登入的租用戶網域。
您必須執行的作業
當您看到 [網域確認] 對話框時,您應該:
檢查網域:查看畫面上所列的功能變數名稱。 您應該會看到帳戶主租使用者的網域,例如:
contoso.com
- 如果您辨識網域 ,且符合您嘗試登入的組織,請選取 [ 確認 ] 繼續進行。
- 如果您無法辨識網域 取消登入程式,並連絡您的IT系統管理員(如果適用),以尋求協助。
此步驟可協助您確保您登入正確的組織。
網域確認對話框的元件
下列螢幕快照顯示網域確認對話框可能適合您的範例:
對話方塊最上方的識別碼,kelly@contoso.com
,代表用來登入的識別碼。 對話方塊標頭和子標頭中列出的租用戶網域會顯示帳戶主租用戶的網域。
雖然不需要針對每個自動加速或智慧連結執行個體顯示網域確認對話方塊,[網域確認] 對話框表示自動加速,且智慧連結在顯示時無法再順暢地繼續。 如果您的組織因為瀏覽器原則或其他原因而清除 Cookie,您可能會頻繁遇到網域確認對話方塊。 最後,假設 Microsoft Entra ID 會管理自動加速登入流程端對端,引進 [網域確認] 對話方塊不應造成任何應用程式中斷。
網域提示
網域提示是應用程式的驗證要求中包含的指示詞。 它們可用來加快使用者進入其同盟 IdP 登入頁面的速度。 多租用戶應用程式也可使用網域提示來加速使用者直接前往其租用戶的品牌化 Microsoft Entra 登入頁面。
例如,應用程式 "largeapp.com" 可能讓客戶存取位於自訂 URL "contoso.largeapp.com" 的應用程式。應用程式也可在驗證要求中包含 contoso.com 網域提示。
網域提示語法會根據使用的通訊協定而有所不同,並常以下列方式設定於應用程式:
對於使用 Web 服務同盟 的應用程式:
whr
查詢字串參數。 例如:whr=contoso.com。使用 安全性聲明標記語言 (SAML) 的應用程式:可能是包含網域提示的 SAML 驗證要求,或是查詢字串 whr=contoso.com。
對於使用 OpenID Connect 的應用程式:
domain_hint
查詢字串參數。 例如,domain_hint=contoso.com。
根據預設,如果下列兩項條件成立,Microsoft Entra ID 會嘗試將登入重新導向至為網域所設定的 IDP:
- 網域提示包含在應用程式的驗證要求中。
- 租用戶與該網域同盟。
如果網域提示未參考已驗證的同盟網域,則您可以忽略。
注意
如果網域提示包含在驗證要求中,並應遵守,網域提示的狀態即會覆寫 HRD 原則中為該應用程式設定的自動加速。
自動加速的 HRD 原則
某些應用程式未沒有相關機制可設定它們所發出的驗證要求。 在這種情況下,就無法使用網域提示來控制自動加速。 若要達成相同的行為,您可透過首頁領域探索原則來設定自動加速。
防止自動加速的 HRD 原則
部分 Microsoft 和 SaaS 應用程式會自動包含 domain_hints (例如,https://outlook.com/contoso.com
會產生包含附加了 &domain_hint=contoso.com
的登入要求),因此可能會中斷 FIDO 等受控認證的推出。 在受控認證的推出期間,您可以使用首頁領域探索原則忽略特定應用程式或網域的網域提示。
啟用舊版應用程式中同盟使用者的直接 ROPC 驗證
最佳做法是讓應用程式使用 Microsoft Entra 程式庫與互動式登入來驗證使用者。 程式庫會負責同盟使用者流程。 有時舊版應用程式 (尤其是使用資源擁有者密碼授與的應用程式 (ROPC)) 會直接提交使用者名稱和密碼至 Microsoft Entra ID,不會為了要了解同盟而編寫程式碼。 應用程式不會執行 HRD,也不與正確的同盟端點互動驗證使用者。 若要選擇此作業,您必須啟用密碼雜湊同步,然後使用首頁領域探索原則啟用特定的舊版應用程式,這些應用程式會使用 ROPC 授與提交使用者名稱/密碼認證,直接透過 Microsoft Entra ID 驗證。
重要
只要在您已啟用密碼雜湊同步,且您知道即使有內部部署 IdP 實作的任何原則,也可驗證該應用程式時,才能啟用直接驗證。 如果您基於任何原因而關閉密碼雜湊同步,或關閉 AD Connect 的目錄同步作業,則您應移除此原則,以避免使用者透過過時的密碼雜湊進行直接驗證。
設定 HRD 原則
若要在應用程式上設定 HRD 原則以執行同盟登入自動加速或直接以雲端為基礎的應用程式,共有三個步驟如下:
建立 HRD 原則。
尋找服務主體以附加原則。
將原則附加至服務主體。
只有在特定應用程式附加至服務主體時,原則才會生效。
任何時候服務主體都只能有一個作用中的 HRD 原則。
您可以使用 Microsoft Graph PowerShell Cmdlet 建立和管理 HRD 原則。
以下 JSON 物件為 HRD 原則定義的範例:
{
"HomeRealmDiscoveryPolicy":
{
"AccelerateToFederatedDomain":true,
"PreferredDomain":"federated.example.edu",
"AllowCloudPasswordValidation":false
}
}
原則類型是「HomeRealmDiscoveryPolicy」
AccelerateToFederatedDomain 是選用項目。 如果 AccelerateToFederatedDomain 為 false,則原則對於自動加速沒有作用。 如果 AccelerateToFederatedDomain 為 true,且租用戶中只有一個已驗證的同盟網域,則系統會將使用者直接導向同盟 IdP 登入。 如果值為 true,且租用戶中有多個已驗證的網域,則必須指定 PreferredDomain。
PreferredDomain 是選用項目。 PreferredDomain 應指出要加速的網域。 如果租用戶只有一個同盟網域,則可加以省略。 如果省略,而且有多個已驗證的同盟網域,則原則沒有任何作用。
如果已指定 PreferredDomain,它必須符合租用戶的已驗證同盟網域。 應用程式的所有使用者都必須能登入該網域 - 同盟網域中無法登入的使用者會受困,而無法完成登入。
AllowCloudPasswordValidation 是選用項目。 如果 AllowCloudPasswordValidation 為 true,則應用程式可直接向 Microsoft Entra 權杖端點提供使用者名稱/密碼認證,以驗證同盟使用者。 只有在密碼雜湊同步已啟用時,此功能才能作用。
此外,本文上一節中,沒有顯示兩個租用戶層級 HRD 選項:
AlternateIdLogin 為選用項目。 如果啟用,AlternateLoginID允許使用者使用其電子郵件地址登入,而不必使用 Microsoft Entra 單一登入頁面的 UPN。 替代識別碼依賴的是使用者不自動加速至同盟 IDP。
DomainHintPolicy 是選用的複雜物件,可「防止」網域提示將使用者自動加速至同盟網域。 此全租用戶設定是用來確保傳送網域提示的應用程式不會阻止使用者使用雲端管理認證登入。
HRD 原則的優先順序和評估
您可以建立 HRD 原則,並將其指派給特定的組織及服務主體。 這表示您可以在特定的應用程式套用多個原則,而 Microsoft Entra ID 必須決定使用的優先順序。 由一組規則來決定哪項 (在眾多已套用的原則中) HRD 原則會生效:
如果驗證要求出現網域提示,則系統會檢查租用戶的 HDR 原則 (設為租用戶預設的原則),以查看是否應忽略網域提示。 如果允許網域提示,即會使用網域提示所指定的行為。
如果已將原則明確指派給服務主體,就會強制執行該原則。
如果沒有網域提示,且未將任何原則明確指派給服務主體,則會強制執行已明確指派給該服務主體之父代組織的原則。
如果沒有網域提示,且未指派原則給服務主體或組織,即會使用預設 HRD 行為。