ASP MVC 2忘记密码

时间:2013-05-17 19:59:48

标签: asp.net-mvc passwords reset-password

我正在ASP.Net MVC 2 Web应用程序中实现重置/忘记密码功能。

我在这里阅读了一些基本上给出这些步骤的帖子:

  • 用户点击“重置”密码。
  • 要求用户发送电子邮件。
  • 用户输入电子邮件并点击发送。
  • 您创建了一个安全哈希(可以使用RNGCryptoServiceProvider)
  • 存储哈希,用户信息(电子邮件地址是唯一的,所以我可以存储用户ID?这是正确的吗?)和日期时间信息(用于到期)在PasswordReset表中
  • 将带有hash作为参数的链接发送到指定的电子邮件地址。
  • 我想在不使用安全问题的情况下完成此任务。

    * 我的问题是从用户点击链接后的验证过程。我只是在PasswordReset表中查找哈希和电子邮件地址吗?如果用户电子邮件帐户被黑客攻击怎么办?然后黑客可以简单地点击链接并将密码重置为任何东西。我错过了如何在验证过程中集成必要的安全检查。 *

    1 个答案:

    答案 0 :(得分:0)

    您可以在“重置”过程中添加安全问题。

    我不确定以下链接的普遍共识是什么,但那里的步骤似乎是恰当的。 https://www.owasp.org/index.php/Forgot_Password_Cheat_Sheet