有人要求我用电子邮件代码实施2FA,就像您在一段时间未登录后从Steam(和许多银行)获得的那样。最初我以为这是我可以在Devise配置中打开的标志,但是我在互联网上找不到任何谈论此类内容的地方。所需的过程将是生成一次性电子邮件并通过电子邮件发送以进入确认屏幕。我发现使用Devise对2FA的所有引用都是指使用SMS或Authenticator应用之类的东西。
在Devise的框架内工作,这似乎可以归结为每隔一段时间(也许隔一天一次)取消对用户的确认。这样,下次登录时,他们会收到另一封带有新链接的电子邮件,以“重新”确认登录。我能找到的最好的方法是将Warden::Manager.after_authentication
设置为user.confirmed_at = nil
,但这似乎并没有满足我的要求。
答案 0 :(得分:0)
感谢Github上一个友好的人,我被带到了Devise插件https://github.com/Houdini/two_factor_authentication,它确实可以满足我的要求。我知道有些一个人必须已经写了!