2

我已经使用 angular2 前端和休息控制器服务层开发了一个 webapp。我在 azure ad 中注册了我的应用程序。系统管理员为 Web 应用启用了 MFA。现在在运行应用程序时出现以下错误。

at [Source: {"error":"interaction_required","error_description":"AADSTS50076: Due to a configuration change made by your administrator, or because you moved to a new location, you must use multi-factor authentication to access

有人可以提供任何教程或示例代码来实现对启用 MFA 的 azure AD 的身份验证吗?

4

1 回答 1

1

在不知道您使用的是哪个身份验证库的情况下,我只能为您提供有关此错误的抽象答案。

当您有登录用户并尝试静默请求访问需要多因素身份验证的资源时,就会出现这种情况。

你有两种方法可以解决这个问题:

  1. 在初始登录时,请求失败的资源或范围。这将在初始请求时提示 MFA,以便任何后续令牌获取都将成功。这里的缺点是即使最终用户最终没有使用您请求的访问权限,应用程序也会提示您提供其他要求(只需登录,从不需要调用某些 api)

  2. 当您遇到interaction_required错误时,启动一个新的交互式令牌获取请求,指定失败的资源或范围。如果您使用的是 ADAL.js,这将意味着使用acquireTokenPopuporacquireTokenRedirect而不是acquireToken(只有在不登录 ui 的情况下才能成功)。

于 2017-09-28T20:04:59.037 回答