假设用户有一个多因素设备并且忘记了他们的密码,这应该如何影响“忘记密码”的工作流程?
如果用户从无法识别的设备/浏览器启动密码重置,则应该需要第二个身份验证因素来执行密码重置。最佳实践是在所有场景中一致地要求第二个因素:正常身份验证(在验证密码之后)或密码重置(在验证对电子邮件链接的访问之后)。
如果识别出请求密码重置的设备/浏览器,则可以在单击电子邮件密码重置链接后跳过双重身份验证。
如果用户丢失了多因素设备,或者软令牌已损坏,应该如何重新配置?
如果设备/浏览器被识别,或者如果用户已经在设备上拥有经过身份验证的会话,则用户应该能够取消提供丢失的第二因素设备并提供替换的第二因素设备。
如果无法识别设备/浏览器和/或用户在该设备上没有经过身份验证的会话,则必须在重新配置第二因素设备之前验证备用双因素身份验证方法。
如果用户忘记了密码并丢失了令牌怎么办......那么重新配置工作流程应该是什么样子?
通过电子邮件发送重置链接足以从被识别为受信任的设备/浏览器中恢复密码*。在用户重置密码后,用户可以通过上述第二因素的重新配置。
如果用户的设备/浏览器不受信任,那么如果第二因素设备不再可用,则用户必须验证备份方法。这可以是发送到备用电话号码的 SMS,或者是在注册双因素身份验证设备时提供的备用字符串。忽略备份代码的这种验证否定了曾经启用的双因素身份验证。必须执行。
有关 Google如何处理这些情况的更多信息,请参阅Google 关于两步验证的帮助文档。他们肯定已经考虑过这一点,并且在网上有很多很好的信息。
* 其中“受信任”表示用户之前使用双重身份验证进行了身份验证,并指出设备/浏览器应该被信任以进行后续身份验证(并且不需要再次从该设备进行双重身份验证)。