Shiro,多重身份验证

时间:2013-08-28 10:41:13

标签: authentication shiro two-factor-authentication

有没有办法在Shiro中实现多因素身份验证?有人可以给我一个如何实现这个的暗示吗?

了解更多详情: 基本思想是,用户需要像往常一样使用用户名和密码登录,但在进行实际身份验证之前,用户还需要输入他作为短信收到的一次性令牌。

谢谢!

1 个答案:

答案 0 :(得分:6)

我终于解决了我自己的问题,但我当然总是接受其他建议。

我实施了自己的2因素身份验证流程:

首先,我更改了登录页面的URL,Shiro将未经身份验证的用户重定向到我自己的登录页面,这导致了身份验证机制。 用户需要完成两个“阶段”才能登录。

  • 在第一阶段,他/她必须提供用户名和密码,如果 这些都是有效的,用户被重定向到登录的第二阶段。
  • 同时,已生成一次性令牌并将其发送给用户 通过短信。此外,用户的身份验证进度已保存在 会议(这意味着我记得,第1阶段已经完成 成功)。
  • 在第2阶段,用户需要输入令牌。如果 令牌是
    • 无效或超过尝试次数(5)
    • 过期(5分钟后)尝试次数 要正确输入超过4的令牌,用户将被重定向 到第1阶段,所有进度都将被删除。我
  • 如果一切顺利,用户将被认证为Shiro (当然不会让他/她知道)

最后,用户将被重定向到他/她最初请求的页面,这仍然允许他/她为页面添加书签。当然,Shiro的记住 - 我将永远被停用。

相关问题