【问题标题】:how should i do a Forget.aspx? [closed]我应该怎么做 Forget.aspx? [关闭]
【发布时间】:2012-02-11 03:06:05
【问题描述】:

我有一个登录功能,但我有一个链接按钮,它链接到 Forget.aspx.... 它有一个文本框供用户输入他们的电子邮件

然而,通常情况下,如果用户忘记了密码,那么用户会来到这个 Forget.aspx 但是网站应该无法检索密码,因为密码在注册和存储在表密码中是哈希的

所以我认为可能是在用户输入电子邮件地址后,它会通过电子邮件向我发送重置链接 然后,如果我去电子邮件,我应该收到链接,一旦我点击它应该提示我到我的网站,它有一个 2 文本框;重置新密码并确认重置新密码

但是我不知道该怎么做?希望有人可以向我展示如何做到这一点的示例或示例?

【问题讨论】:

  • 听起来您已经大致考虑过了。试试吧? :)

标签: asp.net vb.net passwords


【解决方案1】:

我认为你的方法是正确的。您应该重置密码并使用新的哈希密码更新相关字段。

要查看示例,只需查看您最喜欢的网站并查看忘记/重置密码过程

【讨论】:

  • 我建议您在用户单击电子邮件中随机生成的链接之前不要使用新密码更新数据库,否则任何知道该电子邮件的人都可能不断重置某人的密码,从而阻止他们登录。
【解决方案2】:

如果您使用 ASP.Net Membership 提供程序,则可以使用 PasswordRecovery 控件。

This MSDN article详细介绍了如何使用这个控件。

this ASP.Net website article中有完整流程的优秀流程图和描述。

【讨论】:

    【解决方案3】:

    您应该通过电子邮件中的链接传递一个随机值。将此随机值存储在用户的数据库列中(假设为 TempValue)。当用户单击电子邮件链接并提示您的网站时,要求他输入该随机值和新密码。将您的随机值和数据库中用户的电子邮件地址匹配并相应地更改密码。

    【讨论】:

      【解决方案4】:

      我认为您应该向用户发送一封电子邮件到用户电子邮件 [在忘记.aspx 中输入],以便电子邮件包含创建新密码的链接。 这个答案根据我的用户经验。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-12-11
        • 1970-01-01
        • 2022-06-13
        • 2018-01-16
        • 2014-02-28
        • 1970-01-01
        • 2015-06-29
        相关资源
        最近更新 更多