一千萬個為什麽

搜索

如何在數據庫記錄中“更改”更改密碼唯一代碼?


我想在我的java Web應用程序中實現忘記密碼功能。我想像這樣實現它:

  1. 用戶輸入其帳戶電子郵件地址並按“忘記密碼”按鈕
  2. 應用程序生成一個唯一的字符和數字代碼,並將該鏈接作為參數發送到用戶的電子郵件地址
  3. 用戶點擊該鏈接,系統會顯示一個可以輸入新密碼的表單

我想要做的是確保鏈接(即唯一代碼)在用戶按下忘記密碼按鈕後一小時“到期”,這樣,如果攻擊者獲得對其電子郵件帳戶的訪問權限,則此鏈接將無法使用,除非他們獲得訪問權限在第一個小時。

我不知道如何使數據庫“過期”或清除用戶帳戶記錄的代碼。我怎麽能實現這個?

最佳答案

ValidUntil 列添加到包含代碼的表中,並在讓用戶更改密碼之前對其進行檢查。

轉載註明原文: 如何在數據庫記錄中“更改”更改密碼唯一代碼?

猜你喜歡