如何设置通过电子邮件发送的链接的到期时间?

时间:2014-08-04 12:12:12

标签: asp.net c#-4.0

我向用户发送电子邮件链接,要求他们重置密码。单击该链接会重定向到我项目中的页面。如何将此链接的到期时间设置为24小时,以及如何知道此链接是否未重新使用?这是最好的方法吗?

由于

3 个答案:

答案 0 :(得分:1)

我不知道你的过程是怎样的,但推荐的方法是使用guid来识别 密码重置过程。

这是流程的样子。

  1. 使用userId,createDate,closeDate和guid
  2. 创建数据库表
  3. 在表格中创建新条目
  4. 使用指向
  5. 条目中包含uuid的页面链接发送邮件
  6. 如果用户进入页面(单击链接),则检查进程是否仍处于打开状态(closeDate为空)
  7. 检查createDate是否在过去24小时内
  8. 用户可以更改密码
  9. 您设置了closeDate

答案 1 :(得分:0)

将电子邮件发送日期和时间存储在数据库中(您的maintaning用户详细信息)。  当你是重置密码捕获当前日期的打开链接时。比较日期和时间值。他们你可以采取。这可能对你有所帮助。

答案 2 :(得分:0)


我有个主意

  1. 创建一个Time.now()并使用加密对其进行加密,并附加链接
  2. 使用电子邮件和其他选项发送
  3. 转到链接页面
  4. 在页面加载时编写代码请求发送的加密日期时间并解密
  5. 如果时间已到,则匹配时间,然后发送到错误页面,否则继续

就像-:-http://Yourhost/foldername.aspx?val=encryptedTimeDate