設定替代登入識別碼
什麼是替代登入識別碼?
在大部分情況下,使用者會使用其 UPN (使用者主體名稱) 來登入帳戶。 不過,在某些環境中,由於公司原則或內部部署企業營運系統應用程式相依性,使用者可能會使用某種其他形式的登入。
注意
Microsoft 建議的最佳作法是使 UPN 與主要 SMTP 位址相符。 本文專為一小部分無法補救使 UPN 相符的客戶提出說明。
例如,他們可以使用其電子郵件識別碼進行登入,而且其 UPN 可能不同。 這在 UPN 無法路由的案例中特別常見。 請考量以下狀況:有一位使用者名叫 Jane Doe,她使用 UPN jdoe@contoso.local
和電子郵件地址 jdoe@contoso.com
。 Jane 甚至可能不知道 UPN,因為她一直使用電子郵件識別碼登入。 使用任何其他登入方法,而非 UPN,便構成替代識別碼。 更多關於如何創造 UPN 的資訊,請參閱 Microsoft Entra UserPrincipalName 自動填寫功能。
Active Directory 同盟服務 (AD FS) 可讓使用 AD FS 的同盟應用程式使用替代識別碼登入。 如此一來,系統管理員便能為用於登入的預設 UPN 指定替代方案。 AD FS 已支援使用 Active Directory Domain Services (AD DS) 接受的任何形式的使用者識別碼。 設定替代識別碼時,AD FS 可讓使用者使用已設定的替代識別碼值登入,例如電子郵件識別碼。 使用替代識別碼可讓您採用 SaaS 提供者,例如 Office 365,而不需修改內部部署 UPN。 也可讓您支援具有取用者佈建身分識別的企業營運服務應用程式。
Microsoft Entra ID 的替代 ID
在下列案例中,組織可能必須使用替代識別碼:
- 內部部署網域名稱不可路由,例如
contoso.local
,因此預設使用者主體名稱為不可路由 (jdoe@contoso.local
)。 由於本機應用程式相依性或公司原則,所以無法變更現有的 UPN。 Microsoft Entra ID 和 Office 365 要求與 Microsoft Entra 目錄關聯的所有綏域後綴字完全透過網際網路路由。 - 內部部署 UPN 與使用者的電子郵件地址不同,要登入 Office 365,使用者需使用電子郵件地址,但由於組織限制,無法使用 UPN。 以上述方案來說,使用 AD FS 的替代 ID 讓使用者登入 Microsoft Entra ID,不必修改您的內部部署 UPN。
設定替代登入識別碼
使用 Microsoft Entra Connect 我們建議您使用 Microsoft Entra Connect 為您的環境配置替代登入 ID。
- 關於 Microsoft Entra Connect 的新配置,請參閱連接到 Microsoft Entra ID,瞭解如何配置替代 ID 和 AD FS 農場的詳細指示。
- 既有的 Microsoft Entra Connect 安裝方面,請參閱變更使用者登入方法,了解登入方法變更為 AD FS 的指示
當 Microsoft Entra Connect 提供關於 AD FS 環境的詳細資訊時,它會自動檢查 AD FS 上是否有適合的 KB,並為替代 ID 配置 AD FS,包括 Microsoft Entra 聯盟信任專用的所有必要權利宣告規則。 不需要在精靈外部執行其他步驟來設定替代識別碼。
注意
Microsoft 建議使用 Microsoft Entra Connect 配置替代登入 ID。
手動設定替代識別碼
若要設定替代登入識別碼,您必須執行下列工作:
設定 AD FS 宣告提供者信任以啟用替代登入識別碼
如果您有 Windows Server 2012 R2,請確定您已在所有 AD FS 伺服器上安裝 KB2919355。 您可以透過 Windows Update Services 取得,或直接下載。
在伺服器陣列中的任何同盟伺服器上執行下列 PowerShell Cmdlet 來更新 AD FS 設定 (如果您有 WID 伺服器陣列,您必須在伺服器陣列的主要 AD FS 伺服器上執行此命令):
Set-AdfsClaimsProviderTrust -TargetIdentifier "AD AUTHORITY" -AlternateLoginID <attribute> -LookupForests <forest domain>
AlternateLoginID 是您要用於登入的屬性的 LDAP 名稱。
LookupForests 是您使用者所屬的樹系 DNS 清單。
若要啟用替代登入識別碼功能,您必須使用非 Null 的有效值設定 -AlternateLoginID 和 -LookupForests 參數。
在下列範例中,您會啟用替代登入識別碼功能,讓具有 contoso.com 和 fabrikam.com 樹系中的帳戶的使用者可以使用其「郵件」屬性登入已啟用 AD FS 的應用程式。
Set-AdfsClaimsProviderTrust -TargetIdentifier "AD AUTHORITY" -AlternateLoginID mail -LookupForests contoso.com,fabrikam.com
- 若要停用此功能,請將這兩個參數的值設定為 null。
Set-AdfsClaimsProviderTrust -TargetIdentifier "AD AUTHORITY" -AlternateLoginID $NULL -LookupForests $NULL
具有替代識別碼的混合式新式驗證
重要
下列內容僅針對 AD FS 進行測試,而不是協力廠商身分識別提供者。
Exchange 和商務用 Skype
如果您使用替代登入識別碼搭配 Exchange 和商務用 Skype,則使用者體驗會根據您是否使用 HMA 而有所不同。
注意
為了獲得最佳使用者體驗,Microsoft 建議使用混合式新式驗證。
如需詳細資訊,請參閱混合式新式驗證概觀。
Exchange 和商務用 Skype 必要條件
以下是使用替代識別碼達成 SSO 的必要條件。
- Exchange Online 應該已開啟新式驗證。
- 商務用 Skype (SFB) Online 應該已開啟新式驗證。
- Exchange 內部部署應該已開啟新式驗證。 所有 Exchange 伺服器上都需要 Exchange 2013 CU19 或 Exchange 2016 CU18 及更新版本。 環境中沒有 Exchange 2010。
- 商務用 Skype 內部部署應該已開啟新式驗證。
- 您必須使用已啟用新式驗證的 Exchange 和 Skype 用戶端。 所有伺服器都必須執行 SFB Server 2015 CU5。
- 支援新式驗證的商務用 Skype 用戶端
- iOS、Android、Windows Phone
- SFB 2016 (MA 預設開啟,但請確定其尚未停用。)
- SFB 2013 (MA 預設關閉,因此請確定 MA 已開啟。)
- SFB Mac 桌面
- 支援新式驗證並支援 AltID regkey 的 Exchange 用戶端
- 僅限 Office Pro Plus 2016
支援的 Office 版本
使用替代識別碼設定 SSO 的目錄
如果未完成這些額外的設定,使用替代識別碼可能會導致額外的驗證提示。 如需使用替代識別碼對使用者體驗的可能影響,請參閱這篇文章。
使用下列額外設定時,可大幅改善使用者體驗,且組織中的替代識別碼使用者可實現幾乎零驗證提示。
步驟 1:更新到所需的 Office 版本
Office 1712 版 (組建編號 8827.2148) 及更高版本已更新驗證邏輯來處理替代識別碼案例。 若要利用新的邏輯,用戶端電腦必須更新為 Office 1712 版 (組建編號 8827.2148) 及更高版本。
步驟 2:更新到所需的 Windows 版本
Windows 1709 版及更高版本已更新驗證邏輯來處理替代識別碼案例。 若要利用新的邏輯,用戶端電腦必須更新為 Windows 1709 版及更高版本。
步驟 3:使用群組政策為受到波及的使用者配置註冊名錄
Office 應用程式依賴目錄管理員所推送的資訊來識別替代識別碼環境。 下列登錄機碼必須設定為協助 Office 應用程式使用替代識別碼驗證使用者,而不會顯示任何額外的提示。
要新增的登錄 | 登錄資料名稱、類型和值 | Windows 7/8 | Windows 10 | 描述 |
---|---|---|---|---|
HKEY_CURRENT_USER\Software\Microsoft\AuthN | DomainHint REG_SZ contoso.com |
必要 | 必要 | 此登錄的值是組織中租用戶已驗證的自訂網域名稱。 例如,如果 Contoso.com 是租用戶 Contoso.onmicrosoft.com 中其中一個已驗證的自訂網域名稱,Contoso corp 可提供此登錄中的 Contoso.com 值。 |
HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Common\Identity | EnableAlternateIdSupport REG_DWORD 1 |
Outlook 2016 ProPlus 的必要項目 | Outlook 2016 ProPlus 的必要項目 | 此登錄的值可以是 1/ 0,以向 Outlook 應用程式指出其是否應該使用改善的替代識別碼驗證邏輯。 |
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\contoso.com\sts | * REG_DWORD 1 |
必要 | 必要 | 此登錄可用來將 STS 設定為網際網路設定中的受信任區域。 標準 AD FS 部署建議將 AD FS 命名空間新增至 Internet Explorer 的近端內部網路區域。 |
其他設定之後的新驗證流程
- a: 使用者以替代 ID 在 Microsoft Entra ID 佈建
b:目錄管理員推播必備的登錄碼設定給受到波及的客戶端機器 - 使用者會在本機電腦上進行驗證,並開啟 Office 應用程式
- Office 應用程式會採用本機工作階段憑證
- Office 應用程式使用管理員推送的網域提示和本機憑證向 Microsoft Entra ID 進行身份驗證
- Microsoft Entra ID 藉由轉向到正確的聯盟領域與發佈權杖成功對使用者進行身份驗證
其他設定之後的應用程式和使用者體驗
非 Exchange 和商務用 Skype 用戶端
Client | 支援陳述式 | 備註 |
---|---|---|
Microsoft Teams | 支援 | |
商務用 OneDrive | 支援 - 建議使用用戶端登錄機碼 | 設定替代識別碼時,您會看到內部部署 UPN 已在驗證欄位中預先填入。 這必須變更為正在使用的替代身分識別。 建議您使用本文中所述的用戶端登錄機碼:Office 2013 和 Lync 2013 會定期提示輸入 SharePoint Online、OneDrive 和 Lync Online 的憑證。 |
商務用 OneDrive 行動用戶端 | 支援 | |
Office 365 Pro Plus 啟用頁面 | 支援 - 建議使用用戶端登錄機碼 | 設定替代識別碼時,您會看到內部部署 UPN 已在驗證欄位中預先填入。 這必須變更為正在使用的替代身分識別。 建議您使用本文中所述的用戶端登錄機碼:Office 2013 和 Lync 2013 會定期提示輸入 SharePoint Online、OneDrive 和 Lync Online 的憑證。 |
Exchange 和商務用 Skype 用戶端
Client | 支援陳述式 - 使用 HMA | 支援陳述式 - 不使用 HMA |
---|---|---|
Outlook | 支援,沒有額外的提示 | 支援 Exchange Online 的新式驗證:支援 Exchange Online 的一般驗證 :支援下列注意事項: |
混合式公用資料夾 | 支援,沒有額外的提示。 | 使用 Exchange Online 的新式驗證:支援 Exchange Online 的一般驗證:不支援 |
跨單位委派 | 請參閱設定 Exchange 以支援混合式部署中的委派信箱權限 | 請參閱設定 Exchange 以支援混合式部署中的委派信箱權限 |
封存信箱存取 (信箱內部部署 - 封存於雲端) | 支援,沒有額外的提示 | 支援 - 使用者在存取封存時收到額外的憑證提示,他們必須在出現提示時提供其替代識別碼。 |
Outlook Web Access | 支援 | 支援 |
適用於 Android、IOS 和 Windows Phone 的 Outlook Mobile 應用程式 | 支援 | 支援 |
商務用 Skype/Lync | 支援,沒有額外的提示 | 支援 (除非另有註明),但使用者可能會混淆。 在行動用戶端上,只有在 SIP 位址 = 電子郵件地址 = 替代識別碼時,才支援替代識別碼。 使用者可能需要登入商務用 Skype 桌面用戶端兩次,先使用內部部署 UPN,然後使用替代識別碼。 (請注意,「登入位址」實際上是 SIP 位址,其可能與「使用者名稱」不同,雖然通常是一樣的。) 當第一次提示輸入使用者名稱時,使用者應該輸入 UPN,即使系統可能錯誤地填入了替代識別碼或 SIP 位址。 當使用者按一下使用 UPN 登入之後,會再次出現使用者名稱提示,這次會預先填入 UPN。 這次使用者必須以替代識別碼取代該名稱,然後按一下 [登入] 來完成登入程序。 在行動用戶端上,使用者應該在進階頁面中輸入內部部署使用者識別碼,使用 SAM 樣式格式 (domain\username),而不是 UPN 格式。 成功登入之後,如果商務用 Skype 或 Lync 表示「Exchange 需要您的憑證」,您必須提供適用於信箱所在位置的憑證。 如果信箱位於雲端中,您需要提供替代識別碼。 如果信箱為內部部署,您需要提供內部部署 UPN。 |
其他詳細資料和考量
Microsoft Entra ID 提供與 '替代登入 ID' 相關的不同功能
本文提到的替代登入識別碼功能適用於同盟1身分識別基礎結構環境。 其在下列情況下不支援:
- 含有無法路由網域 (例如 Contoso.local) 的 AlternateLoginID 屬性,無法經由 Microsoft Entra ID 驗證。
- 未部署 AD FS 的受控環境。 請參閱 Microsoft Entra Connect 同步文件或使用電子郵件作為替代登入 ID,登入 Microsoft Entra ID 文件。 如果您決定在受託管的2 身份基礎設施環境中調整 Microsoft Entra Connect 同步配置,本篇文章附加配置章節後的應用程式和使用者體驗可能仍然適用,同時特定的 AD FS 配置不再適用,因為受託管的 2 身份基礎設施環境並未部署任何 AD FS。
啟用時,替代登入識別碼功能僅適用於 AD FS 所支援之所有使用者名稱/密碼驗證通訊協定的使用者名稱/密碼驗證通訊協定 (SAML-P、WS-Fed、WS-Trust 和 OAuth)。
執行 Windows 整合式驗證 (WIA) 時 (例如,當使用者嘗試從內部網路存取已加入網域的機器上的公司應用程式,且 AD FS 系統管理員已設定驗證原則,使用 WIA 於內部網路時),則使用 UPN 驗證。 如果您已為信賴憑證者設定替代登入識別碼功能的任何宣告規則,您應該確定這些規則在 WIA 案例中仍然有效。
啟用時,替代登入識別碼功能需要至少一部通用類別目錄伺服器才能從 AD FS 伺服器連線到 AD FS 樹系所支援的每個使用者帳戶樹系。 無法連線到使用者帳戶樹系中的通用類別目錄伺服器,會導致 AD FS 恢復為使用 UPN。 根據預設,所有網域控制站都是通用類別目錄伺服器。
啟用時,如果 AD FS 伺服器在所有設定的使用者帳戶樹系中找到多個具有相同替代登入識別碼值的使用者物件,則登入會失敗。
啟用替代登入識別碼功能時,AD FS 會先嘗試使用替代登入識別碼來驗證終端使用者,如果找不到可由替代登入識別碼識別的帳戶,則恢復為使用 UPN。 如果您想要仍然支援 UPN 登入,您應該確定替代登入識別碼與 UPN 之間沒有任何衝突。 例如,使用其他使用者的 UPN 設定某一使用者的郵件屬性,會導致其他使用者無法使用其 UPN 登入。
如果系統管理員所設定的其中一個樹系已關閉,AD FS 會繼續在設定的其他樹系中尋找具有替代登入識別碼的使用者帳戶。 如果 AD FS 伺服器在搜尋的樹系中找到唯一的使用者物件,使用者將成功登入。
您可能還想要自訂 AD FS 登入頁面,為使用者提供關於替代登入識別碼的一些提示。 若要自訂,可以新增自訂登入頁面描述 (如需詳細資訊,請參閱自訂 AD FS 登入頁面) 或自訂 [使用組織帳戶登入] 字串上方的使用者名稱欄位 (如需詳細資訊,請參閱 AD FS 登入頁面的進階自訂)。
包含替代登入識別碼值的新宣告類型為 HTTP:schemas.microsoft.com/ws/2013/11/alternateloginid
1 同盟身分識別基礎結構環境代表具有 AD FS 或其他協力廠商 IDP 等識別提供者的環境。
2 受託管的身份基礎設施環境代表把 Microsoft Entra ID 當作身份提供者的環境,其使用密碼哈希同步 (PHS) 或直通驗證 (PTA) 部署。
事件和效能計數器
已新增下列效能計數器,以在啟用替代登入識別碼時測量 AD FS 伺服器的效能:
替代登入識別碼驗證:使用替代登入識別碼執行的驗證數目
替代登入識別碼驗證/秒:每秒使用替代登入識別碼執行的驗證數目
替代登入識別碼的平均搜尋延遲:系統管理員針對替代登入識別碼所設定之樹系的平均搜尋延遲
以下是各種錯誤案例,以及 AD FS 所記錄事件對使用者登入體驗的對應影響:
錯誤案例 | 對登入體驗的影響 | 事件 |
---|---|---|
無法取得使用者物件的 SAMAccountName 值 | 登入失敗 | 事件識別碼 364,例外狀況訊息 MSIS8012:找不到使用者「{0}」的 samAccountName。 |
CanonicalName 屬性無法存取 | 登入失敗 | 事件識別碼 364,例外狀況訊息 MSIS8013:使用者「{1}」的 CanonicalName「{0}」格式不正確。 |
在一個樹系中找到多個使用者物件 | 登入失敗 | 事件識別碼 364,例外狀況訊息 MSIS8015:找到在樹系「{1}」中具有身分識別「{0}」且具有身分識別 {2} 的多個使用者帳戶 |
在多個樹系中找到多個使用者物件 | 登入失敗 | 事件識別碼 364,例外狀況訊息 MSIS8014:找到在樹系 {1} 中具有身分識別「{0}」的多個使用者帳戶 |