解决 Microsoft Entra 多重身份验证的 NPS 扩展出现的错误消息

如果在使用 Microsoft Entra 多重身份验证的 NPS 扩展时遇到错误,请参考本文快速解决问题。 NPS 扩展日志可以在安装 NPS 扩展的服务器上的事件查看器中找到,具体位置是在“应用程序和服务日志”>“Microsoft”>“AzureMfa”>“AuthN”>“AuthZ”。

解决常见错误的故障排除步骤

错误代码 疑难解答步骤
CONTACT_SUPPORT 联系支持人员,并指明收集日志的步骤列表。 尽量详细地提供出错之前发生的情况,包括租户 ID 和用户主体名称 (UPN)。
CLIENT_CERT_INSTALL_ERROR 客户端证书的安装方式或者与租户的关联方式可能有问题。 遵循排查 MFA NPS 扩展问题中的说明调查客户端证书问题。
ESTS_TOKEN_ERROR 按照排查 MFA NPS 扩展问题中的说明调查客户端证书和安全令牌问题。
HTTPS_COMMUNICATION_ERROR NPS 服务器无法接收来自 Microsoft Entra 多重身份验证的响应。 验证防火墙是否对进出 https://adnotifications.windowsazure.com 的流量双向开放,以及 TLS 1.2 是否已启用(默认)。 如果禁用 TLS 1.2,用户身份验证将失败,并且事件查看器的系统日志中将输入源为 SChannel、ID 为 36871 的事件。 若要验证 TLS 1.2 是否已启用,请参阅 TLS 注册表设置
HTTP_CONNECT_ERROR 在运行 NPS 扩展的服务器上,验证是否可访问 https://adnotifications.windowsazure.comhttps://login.microsoftonline.com/ 。 如果无法加载这些站点,请排查该服务器上的连接问题。
Microsoft Entra 多重身份验证 (AccessReject) 的 NPS 扩展:
Microsoft Entra 多重身份验证的 NPS 扩展仅对处于 AccessAccept 状态的 Radius 请求执行辅助身份验证。 收到响应状态为 AccessReject 的用户用户名请求,将忽略请求。
此错误通常反映了 AD 中的身份验证失败,或者 NPS 服务器无法接收来自 Microsoft Entra 的响应。 使用端口 80 和 443 验证防火墙是否双向打开,以便流量进出 https://adnotifications.windowsazure.comhttps://login.microsoftonline.com。 另外,还要务必检查“网络访问权限”的“拨入”选项卡上的设置是否设置为“通过 NPS 网络策略控制访问”。 如果没有为用户分配许可证,则也会触发此错误。
Microsoft Entra 多重身份验证 (AccessChallenge) 的 NPS 扩展:
Microsoft Entra 多重身份验证的 NPS 扩展仅对处于 AccessAccept 状态的 Radius 请求执行辅助身份验证。 收到响应状态为 AccessChallenge 的用户用户名请求,将忽略请求。
需要用户提供其他信息才能完成身份验证或授权过程时,将使用此响应。 NPS 服务器向用户发送质询,请求进一步的凭据或信息。 它通常发生在 Access-Accept 或 Access-Reject 响应之前。
REGISTRY_CONFIG_ERROR 注册表中缺少应用程序的某个项,原因可能是 PowerShell 脚本不是在安装后运行的。 错误消息应包括缺少的项。 请确保在 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\AzureMfa 下创建该项。
REQUEST_FORMAT_ERROR
Radius 请求缺少必需的 Radius userName\Identifier 属性。 验证 NPS 是否正在接收 RADIUS 请求
此错误通常反映了安装问题。 必须在可以接收 RADIUS 请求的 NPS 服务器上安装 NPS 扩展。 安装为 RRAS 和 RDG 等服务的依赖项的 NPS 服务器无法接收 Radius 请求。 安装在此类安装中的 NPS 扩展无法正常工作并会出错,因为它无法读取身份验证请求中的详细信息
REQUEST_MISSING_CODE 请确保 NPS 和 NAS 服务器之间密码加密协议支持你正在使用的辅助身份验证方法。 PAP 在云中支持 Microsoft Entra 多重身份验证的所有身份验证方法:电话呼叫、单向短信、移动应用通知和移动应用验证码。 CHAPV2EAP 支持电话呼叫和移动应用通知。
USERNAME_CANONICALIZATION_ERROR 验证该用户是否在本地 Active Directory 实例中存在,以及 NPS 服务是否有权访问目录。 如果使用跨林信任,请联系支持人员,以获得进一步的帮助。
在用户的身份验证扩展中请求的质询 使用非 PAP 的 RADIUS 协议的组织观察到用户 VPN 授权失败,这些事件显示在 NPS 扩展服务器的 AuthZOptCh 事件日志中。 可以将 NPS 服务器配置为支持 PAP。 如果选项中没有 PAP,则可以设置 OVERRIDE_NUMBER_MATCHING_WITH_OTP = FALSE,回退到“批准/拒绝推送通知”。 如需进一步帮助,请查看使用 NPS 扩展的数字匹配

备用登录 ID 错误

错误代码 错误消息 疑难解答步骤
ALTERNATE_LOGIN_ID_ERROR 错误:userObjectSid 查找失败 验证用户是否存在于本地 Active Directory 实例中。 如果使用跨林信任,请联系支持人员,以获得进一步的帮助。
ALTERNATE_LOGIN_ID_ERROR 错误:备用 LoginId 查找失败 验证 LDAP_ALTERNATE_LOGINID_ATTRIBUTE 是否已设置为有效的 Active Directory 属性

如果 LDAP_FORCE_GLOBAL_CATALOG 设置为 True,或者 LDAP_LOOKUP_FORESTS 配置了非空值,请验证是否已配置全局目录以及是否已将 AlternateLoginId 属性添加到它。

如果 LDAP_LOOKUP_FORESTS 配置了非空值,请验证该值是否正确。 如果有多个林名称,必须用分号(而不是空格)分隔名称。

如果这些步骤不能解决此问题,请与支持人员联系获取更多帮助。
ALTERNATE_LOGIN_ID_ERROR 错误:备用 LoginId 值为空 验证是否为用户配置了 AlternateLoginId 属性。

用户可能会遇到的错误

错误代码 错误消息 疑难解答步骤
AccessDenied 调用方租户无权针对用户执行身份验证 检查租户域和用户主体名称 (UPN) 的域是否相同。 例如,确保 user@contoso.com 正在尝试向 Contoso 租户进行身份验证。 UPN 代表 Azure 中的租户的有效用户。
AuthenticationMethodNotConfigured 未为用户配置指定的身份验证方法 请让用户根据管理双重验证设置中的说明添加或检查其验证方法。
AuthenticationMethodNotSupported 指定的身份验证方法不受支持。 请收集包含此错误的所有日志,并联系支持人员。 联系支持人员时,请提供用户名以及触发该错误的辅助验证方法。
BecAccessDenied MSODS Bec 调用返回了拒绝访问错误,原因可能是租户中未定义用户名 用户存在于本地 Active Directory 中,但不会通过 AD Connect 同步到 Microsoft Entra ID。 或者,租户中缺少该用户。 请将该用户添加到 Microsoft Entra ID,并让其根据管理双重验证设置中的说明添加或检查其验证方法。
InvalidFormatStrongAuthenticationServiceInvalidParameter 电话号码采用了无法识别的格式 请让用户更正其验证电话号码。
InvalidSession 指定的会话无效或已过期 完成会话花费的时间超过三分钟。 验证用户是否在发起身份验证请求后的三分钟内输入了验证码或者对应用通知做出了响应。 如果这无法解决问题,请检查客户端、NAS 服务器、NPS 服务器和 Microsoft Entra 多重身份验证终结点之间是否存在网络延迟。
NoDefaultAuthenticationMethodIsConfigured 未为用户配置默认的身份验证方法 请让用户根据管理双重验证设置中的说明添加或检查其验证方法。 验证用户是否已选择默认身份验证方法,并为其帐户配置了该方法。
OathCodePinIncorrect 输入了错误的代码和 PIN。 NPS 扩展中不应出现此错误。 如果用户遇到此错误,请联系支持人员以获得故障排除帮助。
ProofDataNotFound 未为指定的身份验证方法配置证明数据。 请让用户尝试不同的验证方法,或者根据管理双重验证设置中的说明添加新的验证方法。 如果确认用户的验证方法已正确设置后用户仍看到此错误,请联系支持人员
SMSAuthFailedWrongCodePinEntered 输入了错误的代码和 PIN。 (OneWaySMS) NPS 扩展中不应出现此错误。 如果用户遇到此错误,请联系支持人员以获得故障排除帮助。
TenantIsBlocked 租户已被阻止 通过 Microsoft Entra 管理中心的 Microsoft Entra 属性页中的“租户 ID” 联系支持 部门。
UserNotFound 找不到指定的用户 租户在 Microsoft Entra ID 中不再显示为活动状态。 检查订阅是否处于活动状态,并且已创建所需的第一方应用。 此外,请确保证书使用者中的租户符合预期,并且该证书仍然有效且已在服务主体下注册。

用户可能会遇到的不属于错误的消息

有时,由于身份验证请求失败,用户可能会收到多重身份验证发出的消息。 在配置产品中,这些消息并不属于错误,而是有意发出的警告,旨在解释身份验证请求被拒绝的原因。

错误代码 错误消息 建议的步骤
OathCodeIncorrect 输入了错误的代码\OATH 代码不正确 用户输入了错误的代码。 让他们通过请求新的代码或重新登录来重试。
SMSAuthFailedMaxAllowedCodeRetryReached 达到了允许的代码重试次数上限 用户通不过验证质询的次数过多。 根据设置,管理员可能需要立即将他们解除阻止。
SMSAuthFailedWrongCodeEntered 输入了错误的代码/短信 OTP 不正确 用户输入了错误的代码。 让他们通过请求新的代码或重新登录来重试。
AuthenticationThrottled 用户在短时间内尝试次数过多。 遏制。 Microsoft 可能会限制同一用户在短时间内尝试重复执行身份验证的次数。 此限制不适用于 Microsoft Authenticator 或验证码。 如果你已达到这些限制,则可以使用 Authenticator 应用、验证码或在几分钟后尝试再次登录。
AuthenticationMethodLimitReached 已达到身份验证方法限制。 遏制。 Microsoft 可能会限制同一用户在短时间内使用同一种身份验证方法类型(特别是语音呼叫或短信)进行的重复身份验证尝试。 此限制不适用于 Microsoft Authenticator 或验证码。 如果你已达到这些限制,则可以使用 Authenticator 应用、验证码或在几分钟后尝试再次登录。

需要支持人员解决的错误

如果遇到以下错误之一,我们建议联系支持人员来获得诊断帮助。 没有任何一组标准步骤可以解决这些错误。 联系支持人员时,请务必尽量详细地包含有关哪些步骤导致出错的信息以及租户信息。

错误代码 错误消息
InvalidParameter 请求不能 null
InvalidParameter ReplicationScope {0} 的 ObjectId 不能为 null 或空
InvalidParameter CompanyName {0}\ 的长度超过最大允许长度 {1}
InvalidParameter UserPrincipalName 不能为 null 或空
InvalidParameter 提供的 TenantId 未采用正确的格式
InvalidParameter SessionId 不能为 null 或空
InvalidParameter 无法解析请求或 Msods 中的任何 ProofData。 ProofData 未知
InternalError
OathCodePinIncorrect
VersionNotSupported
MFAPinNotSetup

后续步骤

排查用户帐户问题

如果用户在使用双重验证时遇到问题,请帮助他们自我诊断问题。

运行状况检查脚本

在对 NPS 扩展进行故障排除时,Microsoft Entra 多重身份验证 NPS 扩展运行状况检查脚本会执行多个基本运行状况检查。 以下是运行脚本时每个可用选项的快速摘要:

  • 选项 1 - 隔离问题的原因:如果是 NPS 或 MFA 问题(导出 MFA 登錄機碼、重新启动 NPS、测试、导入登錄機碼和重新启动 NPS)
  • 选项 2 - 在并非所有用户都可以使用 MFA NPS 扩展(测试对 Azure 的访问/创建 HTML 报表)时,检查一整套测试
  • 选项 3 - 当特定用户无法使用 MFA NPS 扩展时,检查特定的一组测试(针对特定 UPN 测试 MFA)
  • 选项 4 - 收集日志以与 Microsoft 支持部门联系(启用记录/重新启动 NPS /收集日志)

请与 Microsoft 支持部门联系

如需更多帮助,请通过 MFA 支持联系支持专业人员。 与我们联系时,尽可能包含有关问题的更多信息将很有帮助。 可提供的信息包括看到错误的页面、特定错误代码、特定会话 ID、看到错误的用户的 ID 和调试日志。

若要收集用于支持诊断的调试日志,请在NPS 服务器上运行 Microsoft Entra 多重身份验证 NPS 扩展运行状况检查脚本,并选择选项 4 以收集日志,将其提供给 Microsoft 支持部门。

最后,上传 C:\NPS 文件夹上生成的 zip 输出文件,并将其附加到支持案例中。