我正在为user management system的下一个版本重新实现“重置密码”功能。它目前的工作方式是:
我的问题是:我们是否真的需要用户在创建新密码时重新输入他们的电子邮件地址?如果随机令牌足够强大,是否需要这些额外的信息提供任何额外的安全性,或者它是否只会恶化用户体验?
答案 0 :(得分:2)
我没有看到这样做的任何价值。只需确保密钥安全即可。也许128位(即22个基本64位编码字符)安全随机。这看起来足够大了。还要为令牌生命周期添加超时。 24小时似乎是安全和不便之间的妥协。
我喜欢将电子邮件地址添加到令牌中,以便您可以更智能地记录失败。