1

我想创建一个忘记密码控制,按照下面的步骤:在asp.net密码恢复控制

1-用户输入他的电子邮件。 2-向包含具有认证票据的URL的用户发送电子邮件。

我的问题是我不能创建一个身份验证票证和这里的网址嵌入它是我用了一个例子:

FormsAuthenticationTicket ticket = new 
     FormsAuthenticationTicket(1, ttb1.Text, DateTime.Now, DateTime.Now.AddMinutes(60), 
      true, string.Empty); 

但门票不包含在URL中,我怎么能做到这一点,谢谢。

使用asp.net 4.0。

回答

0
+1

对待提到的文章像一个开始的想法只有严重的安全问题,因为 - 用户的GUID是在解锁传递的url。这样,一旦黑客获知用户ID,他/她就可以自由更改用户的密码。一个简单的解决方法是创建一个额外的表来存储具有两列的解锁请求,请求GUID和用户名。在解锁url中,您传递请求GUID(而不是用户的GUID),并在请求表中为请求附带的GUID找到一个用户名。 –

+0

@Wiktor Zychla - 你是对的,我应该保持请求GUID和用户GUID分开,并将请求ID添加到解锁链接。谢谢 – Wahtever