2013-10-24 191 views
1

我有一個頁面,用戶可以請求密碼重置鏈接,如果他們忘記了他們的帳戶的密碼。如果用戶已經登錄到他們的帳戶,我還想爲用戶創建一個方法來更改他們的密碼。爲每種不同類型的密碼重置創建單獨的頁面會更好嗎?還是應該根據用戶是否登錄來更改表單?真的有關係嗎?有一個通用標準嗎?更改密碼與重置密碼

+0

本主題是更適合http://ux.stackexchange.com。 – kjhughes

+0

我不同意,因爲我的問題的目的不是用戶友好,而是從開發立場來看更標準的做法。我的意圖是堅持普遍接受的編程標準,儘可能保證安全。我明白爲什麼這個問題可能被視爲一個問題,我應該讓我的問題的理由更明顯。謝謝 –

回答

2

創建單獨的頁面。重置鏈接(用戶未登錄時)通常使用唯一的GET值。當用戶要求將鏈接發送給他們時,會在數據庫中插入一個值。當一個人訪問重置頁面時,服務器將檢查輸入到URL中的GET值。如果GET值與數據庫中的唯一值匹配,則該人員有機會輸入新密碼。數據庫中的唯一值通常設置爲很快過期。這可以防止人們使用強力重置其他人的密碼。

你不想當用戶登錄時啓動一個簡單的密碼更改混合以上。

+0

感謝您的輸入。上面提到的忘記密碼過程的密碼重置正是我如何做這項工作。我很高興我正確地做到了這一點。我想,也許我會創建一個更新帳戶信息頁面,用戶可以根據需要更改信息,包括他們的密碼。 –

+0

更改密碼和重置密碼是兩件完全不同的事情。當用戶未登錄時可以重置密碼。僅當用戶登錄並知道他們當前的密碼時纔會更改密碼。 –