【发布时间】:2019-12-10 06:53:09
【问题描述】:
我有一个用 Angular 7 编写的单页应用程序,它与我的 ASP.Net Core 2.2 Web API 服务器通信。 登录时,用户使用“资源所有者密码凭据”授权将他的凭据发送到我的授权服务器(连接/令牌)。 我正在尝试添加 2 因素身份验证 (SMS),但我找不到任何描述如何执行此操作的示例。我找到的所有示例都是使用 MVC 编写的,使用 cookie 身份验证。
我正在考虑这个流程,但我觉得应该有更好的方法
- 用户输入他的用户名和密码
- 如果用户启用了 2 个因素,我将向他发送带有代码的 SMS。此外,一个有限的 access_token 和 id 令牌将被发送给客户端。此 access_token 仅在使用户能够发送 2 因子代码时才有效。 如果 id-token 将声明“两个因素”:“on”,我会将用户重定向到 SMS 确认代码。
- 用户将发送带有代码的发布请求。如果代码匹配,我将向客户端返回一个包含所有声明的新 access_token。
【问题讨论】:
-
您找到解决方案了吗?如果可以,请分享您的解决方案
-
不幸的是还没有,因为我们找不到最佳实践,我们决定推迟这个问题@Nerdroid
标签: asp.net angular oauth-2.0 two-factor-authentication openiddict