本文介绍有关 Microsoft Entra 混合联接设备以及无密码登录本地资源的常见问题。 借助此无密码功能,可以使用 FIDO2 安全密钥在 Windows 10 设备上为 Microsoft Entra 混合联接设备启用 Microsoft Entra 身份验证。 用户可以在其设备上使用 FIDO2 密钥等现代凭据登录 Windows,并通过无缝单一登录(SSO)体验访问其本地资源中传统的 Active Directory 域服务(AD DS)资源。
支持在混合环境中的以下用户方案:
- 使用 FIDO2 安全密钥登录到 Microsoft Entra 混合联接设备,并获取对本地资源的 SSO 访问权限。
- 使用 FIDO2 安全密钥登录到已加入 Microsoft Entra 的设备,并获取对本地资源的 SSO 访问权限。
若要开始使用 FIDO2 安全密钥以及对本地资源的混合访问,请参阅以下文章:
已知问题
- 用户无法使用 FIDO2 安全密钥登录,因为 Windows Hello 人脸识别速度太快并且是默认登录机制
- 用户无法在创建 Microsoft Entra 混合联接计算机后立即使用 FIDO2 安全密钥
- 用户无法在使用 FIDO2 安全密钥登录并收到凭据提示后通过 SSO 访问我的 NTLM 网络资源
用户无法使用 FIDO2 安全密钥登录,因为 Windows Hello 人脸识别速度太快并且是默认登录机制
对于用户已注册的设备,Windows Hello 人脸识别是最佳体验。 FIDO2 安全密钥应该用于共享设备或用于 Windows Hello 企业版注册有困难的情形。
如果 Windows Hello 人脸识别阻止用户尝试 FIDO2 安全密钥登录方案,用户可以通过在“设置”>“登录选项”中删除人脸注册来关闭 Hello 人脸登录。
用户无法在创建 Microsoft Entra 混合联接计算机后立即使用 FIDO2 安全密钥
在全新安装的 Microsoft Entra 混合联接计算机上执行加入域和重启过程后,必须使用密码登录并等待策略同步,然后才能使用 FIDO2 安全密钥进行登录。
此行为是已加入域的设备的已知限制,并不是针对 FIDO2 安全密钥。
若要查看当前状态,请使用 dsregcmd /status
命令。 检查 AzureAdJoined 和 DomainJoined 是否都显示“是” 。
用户无法在使用 FIDO2 安全密钥登录并收到凭据提示后通过 SSO 访问我的 NTLM 网络资源
请确保对足够的 DC 进行修补,以便及时响应资源服务请求。 若要检查是否可以看到运行该功能的服务器,请查看 nltest /dsgetdc:<dc name> /keylist /kdc
的输出
如果可以使用此功能看到 DC,则表明用户的密码可能在他们登录之后发生了更改,或者,存在其他问题。 请按下一部分中的详细介绍收集日志,以便 Microsoft 支持团队进行调试。
疑难解答
有两个方面可以进行问题排查 - Windows 客户端问题或部署问题。
Windows 客户端问题
若要收集数据来帮助排查登录 Windows 的问题或从 Windows 10 设备访问本地资源的问题,请完成以下步骤:
打开反馈中心应用。 确保你的名字在该应用的左下角,然后选择“创建新反馈项”。
对于反馈项类型,请选择“问题”。
选择“安全和隐私”类别,然后选择“FIDO”子类别 。
切换“将附加的文件和诊断连同我的反馈一起发送到 Microsoft”复选框。
选择“重新创建我的问题”,然后单击“开始捕获” 。
使用 FIDO2 安全密钥锁定和解锁计算机。 如果出现该问题,请尝试使用其他凭据来解锁。
返回到反馈中心,选择“停止捕获”,并提交反馈 。
前往“反馈”页,然后前往“我的反馈”选项卡。选择最近提交的反馈。
选择右上角的“共享”按钮,以获取该反馈的链接。 在打开支持案例时,或在回复为现有支持案例分配的工程师时,请包含此链接。
以下事件日志和注册表项信息会被收集:
注册密钥
- HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\FIDO [*]
- HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\PassportForWork* [*]
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Policies\PassportForWork* [*]
诊断信息
- 实时内核转储
- 收集 AppX 包信息
- UIF 上下文文件
事件日志
- %SystemRoot%\System32\winevt\Logs\Microsoft-Windows-AAD%40Operational.evtx
- %SystemRoot%\System32\winevt\Logs\Microsoft-Windows-WebAuthN%40Operational.evtx
- %SystemRoot%\System32\winevt\Logs\Microsoft-Windows-HelloForBusiness%40Operational.evtx
部署问题
要排查有关部署 Microsoft Entra Kerberos 服务器的问题,请使用新 AzureADHybridAuthenticationManagement PowerShell 模块的日志。
查看日志
AzureADHybridAuthenticationManagement 模块中的 Microsoft Entra Kerberos 服务器 PowerShell cmdlet 使用与标准 Microsoft Entra Connect 向导相同的日志记录。 若要查看 cmdlet 中的信息或错误详细信息,请完成以下步骤:
- 在使用 AzureADHybridAuthenticationManagement 模块的计算机上,浏览到
C:\ProgramData\AADConnect\
。 此文件夹默认已隐藏。 - 打开并查看位于该目录中的最新的
trace-*.log
文件。
查看 Microsoft Entra Kerberos 服务器对象
要查看 Microsoft Entra Kerberos 服务器对象并验证它们是否一切正常,请完成以下步骤:
在 Microsoft Entra Connect 服务器或已安装 AzureADHybridAuthenticationManagement 模块的任何其他计算机上,打开 PowerShell 并导航到
C:\Program Files\Microsoft Azure Active Directory Connect\AzureADKerberos\
运行以下 PowerShell 命令,以从 Microsoft Entra ID 和本地 AD DS 查看 Microsoft Entra Kerberos 服务器。
将 corp.contoso.com 替换为本地 AD DS 域的名称。
Import-Module ".\AzureAdKerberos.psd1" # Specify the on-premises AD DS domain. $domain = "corp.contoso.com" # Enter an Azure Active Directory Global Administrator username and password. $cloudCred = Get-Credential # Enter a Domain Admin username and password. $domainCred = Get-Credential # Get the Azure AD Kerberos Server Object Get-AzureADKerberosServer -Domain $domain -CloudCredential $cloudCred -DomainCredential $domainCred
命令会从 Microsoft Entra ID 和本地 AD DS 输出 Microsoft Entra Kerberos 服务器的属性。 查看这些属性,以验证是否所有内容都正常。 使用下表来验证这些属性。
第一组属性来自本地 AD DS 环境中的对象。 第二部分(以 Cloud 开头的属性)来自 Microsoft Entra ID 中的 Kerberos 服务器对象:
properties | 说明 |
---|---|
ID | AD DS 域控制器对象的独一无二的 ID。 |
DomainDnsName | AD DS 域的 DNS 域名。 |
ComputerAccount | Microsoft Entra Kerberos 服务器对象的计算机帐户对象 (DC)。 |
UserAccount | 已禁用的用户帐户对象,该对象可保存 Microsoft Entra Kerberos 服务器 TGT 加密密钥。 此帐户的 DN 是 CN=krbtgt_AzureAD,CN=Users,<Domain-DN> |
KeyVersion | Microsoft Entra Kerberos 服务器 TGT 加密密钥的密钥版本。 该版本是在该密钥创建时分配的。 然后,该版本会在每次轮换该密钥时都递增。 增量是基于复制元数据的,并且将有可能大于 1。 例如,初始 KeyVersion 可能为 192272 。 该密钥第一次轮换时,该版本可能会前进到 212621。 要验证本地对象的 KeyVersion 和云对象的 CloudKeyVersion 是否相同,这一点很重要 。 |
KeyUpdatedOn | 更新或创建 Microsoft Entra Kerberos 服务器 TGT 加密密钥的日期和时间。 |
KeyUpdatedFrom | 上次更新 Microsoft Entra Kerberos 服务器 TGT 加密密钥的 DC。 |
CloudId | Microsoft Entra 对象的 ID。 必须与上述 Id 匹配。 |
CloudDomainDnsName | Microsoft Entra 对象的 DomainDnsName。 必须与上面的 DomainDnsName 匹配。 |
CloudKeyVersion | Microsoft Entra 对象的 KeyVersion。 必须与上面的 KeyVersion 匹配。 |
CloudKeyUpdatedOn | Microsoft Entra 对象的 KeyUpdatedOn。 必须与上面的 KeyUpdatedOn 匹配。 |
后续步骤
若要开始使用 FIDO2 安全密钥以及对本地资源的混合访问,请参阅以下文章: