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