WebSecurity.ResetPassword 方法

使用密碼重設語彙基元來重設密碼。

命名空間:  WebMatrix.WebData
組件:  WebMatrix.WebData (在 WebMatrix.WebData.dll 中)

public static bool ResetPassword(
	string passwordResetToken,
	string newPassword
)

參數

passwordResetToken
型別:System.String

密碼重設語彙基元。

newPassword
型別:System.String

新密碼。

傳回值

型別:System.Boolean
若已變更密碼,則為 true,否則為 false

例外狀況條件
InvalidOperationException

不會呼叫 SimpleMembershipProvider.Initialize(String, NameValueCollection) 方法。

-或-

不會呼叫 InitializeDatabaseConnection() 方法。

-或-

並未在站台的組態中註冊 SimpleMembershipProvider 成員資格提供者。如需詳細資訊,請連絡站台的系統管理員。

如果使用者忘記自己的密碼,可以要求新的密碼。若要提供新密碼,請執行下列動作:

  1. 建立密碼重設頁面,內含可讓使用者輸入其電子郵件地址的欄位。

  2. 使用者在密碼重設頁面中輸入自己的電子郵件地址後,請驗證此電子郵件地址是否代表有效的使用者。如果真是如此,請呼叫 GeneratePasswordResetToken(String, Int32) 方法以產生密碼重設語彙基元。

  3. 建立一個超連結,該超連結會指向您的網站中的確認頁面,並包含此語彙基元作為連結 URL 中的查詢字串參數。

  4. 利用電子郵件將此連結傳送給使用者。使用者收到這封電子郵件時,按一下此連結即可叫用確認頁面。

  5. 建立確認頁面,以便從 URL 參數擷取語彙基元並可讓使用者輸入新密碼。

  6. 當使用者提交新密碼時,呼叫 ResetPassword(String, String) 方法並傳遞密碼重設語彙基元和新密碼。如果此語彙基元有效,就會重設密碼。如果此語彙基元無效 (例如,已經過期),即顯示錯誤訊息。

入門網站範本的頁面會顯示如何使用 GeneratePasswordResetToken(String, Int32) 方法重設密碼。ForgotPassword.cshtml 檔中有初始步驟的說明,而 PasswordReset.cshtml 檔中有後續步驟的說明。

顯示: