WebSecurity - ResetPassword()
❮ WebSecurity
Definition(定義)
ResetPassword() 方法使用密碼令牌重置使用者密碼。
C# 和 VB 語法
WebSecurity.ResetPassword(passwordResetToken,newPassword)
引數
引數 | 型別 | 描述 |
---|---|---|
passwordResetToken | 字串 | 密碼令牌 |
newpassword | 字串 | 新密碼 |
返回值
型別 | 描述 |
---|---|
布林值 | 如果密碼已更改,則為true,否則為false |
錯誤和異常
如果以下任一情況發生,則對 WebSecurity 物件的任何訪問都會引發 InvalidOperationException:
- 尚未呼叫 InitializeDatabaseConnection() 方法
- SimpleMembership 未初始化(或在網站配置中停用)
備註
如果使用者忘記了密碼,請使用 ResetPassword 方法。
ResetPassword 方法需要一個密碼重置令牌。
可以使用 CreateAccount()、CreateUserAndAccount() 或 GeneratePasswordResetToken() 方法建立確認令牌。
密碼可以透過程式碼重置,但常見的做法是向用戶傳送電子郵件(包含令牌和一個頁面連結),以便使用者可以使用新令牌確認新密碼。
@{
newPassword = Request["newPassword"];
confirmPassword = Request["confirmPassword"];
token = Request["token"];
if IsPost
{
// 為節省空間,此處省略了輸入測試
retunValue = ResetPassword(token, newPassword);
}
}
<h1>更改密碼</h1>
<form method="post" action="">
<label for="newPassword">新密碼:</label>
<input type="password" id="newPassword" name="newPassword" title="新密碼" />
<label for="confirmPassword">確認密碼:</label>
<input type="password" id="confirmPassword" name="confirmPassword" title="確認新密碼" />
<label for="token">密碼令牌:</label>
<input type="text" id="token" name="token" title="密碼令牌" />
<p class="form-actions">
<input type="submit" value="更改密碼" title="更改密碼" />
</p>
</form>
❮ WebSecurity