在我的 saas 应用程序中,如果典型用户想要采取敏感操作(例如设置 2fa),他们需要通过再次输入密码来重新进行身份验证。
对于通过 Google 或 Github 等 oauth 提供商注册的用户,这些用户重新进行身份验证的最佳做法是什么?
他们应该:
我觉得上面的#1 有点毫无意义,因为任何有权访问其笔记本电脑的人都可以轻松地单击重新进行身份验证。与通过正常密码过程重新进行身份验证的用户相比,他们需要从内存中记住密码或访问可能被锁定的密码管理器,因此恶意行为者执行此操作可能会遇到更大的困难。
最好或最常见的方法是什么?大公司使用过哪些现实生活中的例子?或者说标准是什么?
总体概念是注册应该需要身份验证。但没有固定的解决方案,因为您的要求可能会有所不同。
示例流程
一般概念
高级示例
在瑞典,许多用户拥有政府批准的强大安全移动应用程序,称为 BankID,使用户能够展示自己的身份。因此,您可以设计一个没有新密码的解决方案,如下所示:
总结
OAuth 2.0 规范中的授权服务器应该使您能够根据您的特定要求编写这些行为。确切的功能取决于实现。