【发布时间】:2016-02-11 06:06:31
【问题描述】:
这是我第一个使用 c# 的 ASP.net 应用程序。就问题而言,如果用户忘记了他/她的密码,则有安全的过程来设置密码,我需要在用户的注册电子邮件 ID 上发送电子邮件,其中包含唯一且一次性使用的链接,该链接将打开一个包含两个字段的页面,例如“密码”和“确认密码”以及“提交”按钮为该用户设置新密码。我有一个发送电子邮件的代码,但问题是如何创建一个唯一且一次性使用的页面链接。如果您需要我的任何代码示例,我会分享它。谢谢。
【问题讨论】:
-
Identity在 ASP 中实现了重置密码的功能 - 您可以在 Internet 上找到一些资源。如果您不使用Identity,则该模式非常简单:当用户请求重置密码时,创建随机 guid,将其存储在数据库中(例如在用户表中),然后通过电子邮件将其发送给您的用户。你可以放。 f.e 在重置页面的链接中,其中查询字符串中的某些参数 (f.e.token) 等于生成的 guid。接下来,只需进行验证 - 比较查询字符串和数据库中的 guid。