本机身份验证 Web 回退

适用于:带灰色 X 号的白色圆圈。 员工租户 带白色对号的绿色圆圈。 外部租户(了解详细信息

Web 回退允许使用本机身份验证的客户端应用使用浏览器委托的身份验证作为回退机制来提高复原能力。 当本机身份验证不足以完成身份验证流时,会出现这种情况。 例如,如果授权服务器需要客户端无法提供的功能。

使用本机身份验证的所有客户端应用都需要支持 Web 回退。

Web 回退流

此流显示 Web 回退如何发生:

  • 客户端应用从用户处收集初始信息,并通过向 Microsoft Entra 发出请求来启动身份验证流。
  • Microsoft Entra 返回成功或错误响应。 成功响应指示客户端应用可以继续向 Microsoft Entra 发出请求。 错误响应指示客户端可以继续提示用户提供更多信息然后继续向 Microsoft Entra 发出请求。 错误响应还可以指示客户端需要使用浏览器委托的身份验证。
  • 如果错误响应指示客户端需要使用浏览器委托的身份验证,则客户端将继续在浏览器中执行身份验证流。

示例方案

让我们看一个示例,当 Microsoft Entra 可能指示客户端需要使用浏览器委托的身份验证时:

  • 在 Microsoft Entra 管理中心中,管理员将应用配置为使用带密码的电子邮件身份验证方法。
  • 此配置意味着 Microsoft Entra 要求客户端应用能够收集用户的电子邮件(用户名)和密码。 客户端应用通过发送 password 质询类型将此能力传达给 Microsoft Entra。 请在本机身份验证质询类型一文中详细了解质询类型。
  • 客户端应用还应通过提交服务器发送到用户电子邮件的一次性密码来验证电子邮件。 客户端应用通过发送 oob 质询类型将此能力传达给 Microsoft Entra。 请在本机身份验证质询类型一文中详细了解质询类型
  • 如果客户端应用未发送 oob 和 password 质询类型,Microsoft Entra 会将其解释为客户端应用无法满足设置的要求。 在这种情况下,Microsoft Entra 将返回一个错误,指示客户端需要使用浏览器委托的身份验证。

支持 Web 回退

如果 Microsoft Entra 的响应表明客户端应用需要回退到浏览器委托的身份验证,我们建议使用 Microsoft 构建和支持的身份验证库

了解如何在本机 Android 应用本机 iOS/macOS 应用中支持 Web 回退。