允许用户重置密码的最安全方法是啥

Posted

技术标签:

【中文标题】允许用户重置密码的最安全方法是啥【英文标题】:what is the most secure method to allow a user to reset password允许用户重置密码的最安全方法是什么 【发布时间】:2014-03-26 10:22:46 【问题描述】:

允许网站用户重设密码的最安全方法是什么?我知道您可以向他们的电子邮件发送一个独特的 url,但是人们还使用其他技术吗?假设用户不记得他们当前的密码。

【问题讨论】:

最安全?某种 id 令牌或生物特征值 .. @asawyer 我不知道加密狗是什么意思,但我认为这很冒犯 @LeosLiterak 开个玩笑,抱歉,en.wikipedia.org/wiki/Software_protection_dongle @asawyer 我明白了。我的字典没有查到它,所以我认为这是一种侮辱。对不起。 ***.com/questions/910856/… 【参考方案1】:

例如

    向短信发送一些代码(你有的东西 - 电话) 让相关人员确认您的身份(社交网络、信任网络)/您的身份/ 通过蜗牛邮件发送代码 /something you are/ 现场接线员电话(您知道的)

但其中一些容易受到社会工程攻击。最安全的是当您知道某事并且您拥有某事并且您是某事时。但这很难实现。

【讨论】:

【参考方案2】:

推荐的方法是发送一个有限时间哈希的url,它的有效时间为15-30分钟,更改密码时撤销。

如果信息真的很安全,那么您可能想看看银行如何处理密码重置,这通常涉及一个电话和电话银行密码!

【讨论】:

【参考方案3】:

在注册过程中总是会询问安全问题。您可以使用它来重置密码。 您也可以阅读 this 较早的帖子。

【讨论】:

但用户必须同时提供问题/答案,因为典型问题很容易猜到 安全问题是老技术,不安全。请在此处阅读第二个答案,原因是:***.com/questions/2734367/…

以上是关于允许用户重置密码的最安全方法是啥的主要内容,如果未能解决你的问题,请参考以下文章

重置 ASP.NET 密码 - 安全问题?

创建链接以重置密码的最佳做法是啥? [关闭]

使用–skiptables重置MySQL8 root用户的密码

通过电子邮件发送临时密码重置密码

Linux中禁止用户修改/重置密码

安全“重置密码”的强算法