花了几个小时研究找到正确的方法后,我问这个问题。我是oAuth和openid的新手,所以请你赦免我的知识空白。
我们在组织中使用带有oAuth 2(隐式流程)的open Id。我们有一个单独的资源服务器和授权服务器。我们使用基于谷歌的单点登录和电子邮件,密码进行登录。
我们计划推出基于sms otp的登录,gmail登录和电子邮件密码。意思是保留这三种选择。我真的不确定哪个是这个用例的最佳设计。我们有Web应用程序和可信客户端,但没有应用程序,并使用.net进行身份验证。
关于堆栈溢出的以下链接提供了一些想法,但我不确定如何以安全的方式支持我的混合用例。
Recommended design for OTP/2FA support in OAuth2
提前致谢!!
答案 0 :(得分:0)
我知道这个问题已经很老了,但是我想添加一个答案来帮助他人。我最终实施了一个到目前为止效果很好的解决方案。我们使用资源所有者的流程进行基于顶部的登录。最上面是密码,手机号码是用户名。验证成功后,OTP会过期并返回令牌,该令牌可用于调用其他API。 Google登录是隐式的oauth2流。