我有一个 java spring web 应用程序,目前它有一个正常的身份验证流程。我需要向其添加两因素身份验证实现。为此,我们可以使用第三方提供商,例如谷歌或任何其他提供商。
最佳答案
I need to add a two factor authentication implementation to [my java spring web application].
这是一个good package that I wrote它在 Java 代码中实现了 2FA/双因素身份验证。
从 READ_ME 中复制,让其发挥作用:
- 正确播种随机数生成器。
- 使用
generateBase32Secret()
为用户生成 key 。 - 将 key 存储在与用户帐户关联的数据库中。
- 向用户显示
qrImageUrl(...)
返回的 QR 图像 URL。 - 用户使用该图像将 key 加载到其身份 validator 应用程序中。
每当用户登录时:
- 用户将身份 validator 应用程序中的号码输入到登录表单中。
- 从数据库中读取与用户帐户关联的 secret 。
- 服务器将用户输入与
generateCurrentNumber(...)
的输出进行比较。 - 如果它们相等,则允许用户登录。
关于java - 向我的 Web 应用程序添加两因素身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33206800/