關於重設密碼的步驟

這應該有很標準的程序,不過好像還是有很多站沒這樣做...

必要的步驟包括:

  • 如果使用者只記得 username,輸入後告知使用者「已經發送確認信至 username 當初所註冊的信箱」。
  • 如果使用者只記得 e-mail,輸入後告知使用者「已經發送確認信至該 e-mail」,如果該 e-mail 沒有被註冊也不要有不同的訊息,因為如果可以判斷 e-mail 有沒有不同的訊息,可以利用這個功能大致判斷某個人有沒有註冊這個服務。
  • 基本上都要加上 CAPTCHA 以及對 IP rate limit 避免有人利用這個行為惡搞。

要注意的是要透過「確認信」的步驟再改密碼,而不能在要求重設密碼時就馬上把密碼改掉,不然就可以惡搞使用者。

3 thoughts on “關於重設密碼的步驟”

  1. 很多會員網站, 都是在輸入會員 id 或 email 後, 直接寄出原始密碼函. 使用者就可以不用重設密碼 XD

  2. to jclin:
    這種直接寄出密碼函的網站,其實很可怕,想想看,一個網站會有多少管理員經手,當使用者可以再次看到自己的明碼密碼,不就表示那些管理員都"可以"知道使用者的原始密碼,那麼如果使用者習慣在其他網站使用相同的密碼,那還有"資訊安全"嗎? 國內曾經就有這樣的案例: http://www.libertytimes.com.tw/2004/new/mar/16/today-stock5.htm

    所以,我設計的網站,在 form post 前,必定將密碼作 One Way Function 轉換後,才送到伺服器。

Leave a Reply

Your email address will not be published. Required fields are marked *