webapp中忘记密码

Posted

技术标签:

【中文标题】webapp中忘记密码【英文标题】:Forgotten password in webapp 【发布时间】:2012-02-09 17:37:22 【问题描述】:

我目前正在处理我的网站的管理页面,现在我已经到了一个阶段,我开始研究如果用户忘记了原始密码,他们可以如何检索或获得密码。

我以前没有处理过类似的事情,我不确定要使用哪种解决方案,因为似乎有很多方法可以解决这个问题。所以我想我会问更有经验的开发人员。处理“密码检索”的最佳方法是什么

如果有帮助,当用户最初注册时,他们必须提供电子邮件地址和密码,然后使用盐进行加密。

【问题讨论】:

不要提供将用户密码发送给他们的方法。所述功能的任何实现都是不安全的。这意味着您用来保护其密码的方法是无用的。您应该允许他们使用的唯一方法是在他们提供了他们提供的一些其他信息之后重置他们的密码。除非您使用加密算法,否则您想要的甚至是不可能的,因为无法反转 hasing 算法。如果您使用的是加密算法。 这里有一个很好的答案[现代 Web 应用程序中密码检索的有效技术][1] [1]:***.com/questions/910856/… @IRHM :+1,一个很好的问题,也帮助了我学习新东西。问候 @GagandeepBali 很高兴我能帮上忙! 【参考方案1】:

我更喜欢让用户输入他们的电子邮件地址,然后:

一个。当用户提交请求并存储它时创建一个哈希(它应该在一定的时间后过期 - BloodyWorld)。

b.用户会收到一个包含该哈希的链接。

c。他们单击应该转到您网站上安全页面的链接,您验证其有效,确保您保存的哈希与链接中的哈希匹配,然后要求他们重新生成密码。

【讨论】:

我重新开始给该哈希一个到期日期,例如请求后 1 小时。 您好,非常感谢您的回复,我当然喜欢这个主意。我想你不知道我可以学习的任何教程吗? @IRHM - 我没有使用过这方面的教程,所以无法推荐。但是,如果你把我的想法分解成几个步骤,你应该能够在谷歌上找到每个部分的一些教程。【参考方案2】:

好吧,如果您对密码进行哈希处理,则无法检索它。您必须创建一个临时密码并将其发送给用户。然后让他们使用临时密码登录,然后创建一个新密码。

【讨论】:

你应该在加盐后对密码进行散列而不是加密...... 非常感谢您抽出宝贵时间回复。对不起,我的错误,不正确的术语。我正在对密码进行哈希处理。亲切的问候

以上是关于webapp中忘记密码的主要内容,如果未能解决你的问题,请参考以下文章

VMware CentOS7 忘记密码解决方法

ipad忘记icloud密码如何注销(ipad忘记密码怎么注销icloud账户)

harbor密码丢失,忘记Harbor密码?

win7下mysql服务器忘记密码怎么办

电脑登录密码忘记了怎么找回?

MongoDB忘记密码怎么恢复