向我的 Web 应用程序添加双因素身份验证

Add two factor authentication to my web application

我有一个 java spring 网络应用程序,目前它有一个正常的身份验证流程。我需要向其中添加一个双因素身份验证实现。为此,我们可以使用像 google 或任何其他提供商这样的第 3 方提供商。

I need to add a two factor authentication implementation to [my java spring web application].

这是一个 good package that I wrote,它在 Java 代码中实现了 2FA/双因素身份验证。

从 READ_ME 复制,要使其正常工作,您:

  1. 正确设置随机数生成器的种子。
  2. 使用 generateBase32Secret() 为用户生成密钥。
  3. 将密钥存储在与用户帐户关联的数据库中。
  4. qrImageUrl(...)返回的二维码图片URL显示给用户。
  5. 用户使用图像将密钥加载到他的身份验证器应用程序中。

每当用户登录时:

  1. 用户将身份验证器应用程序中的号码输入到登录表单中。
  2. 从数据库中读取与用户帐户关联的秘密。
  3. 服务器将用户输入与 generateCurrentNumber(...) 的输出进行比较。
  4. 如果它们相等则允许用户登录。