WebSecurity GeneratePasswordResetToken 方法

2018-09-24 18:35 更新

WebSecurity - GeneratePasswordResetToken()


WebSecurity 對象 WebSecurity 對象

定義

GeneratePasswordResetToken() 方法生成一個密碼重置令牌,可以在電子郵件中發(fā)送給用戶以便用戶可以重設(shè)密碼。


C# 和 VB 語法

WebSecurity.GeneratePasswordResetToken(userName, expiration)


參數(shù)

參數(shù) 類型 描述
userName String 用戶名
expiration Integer 令牌到期時間,以分鐘計。默認(rèn)是 1440(24 小時)


返回值

類型 描述
String 一個重置令牌。


錯誤和異常

在下面的情況下,任何對 WebSecurity 對象的訪問將拋出一個 InvalidOperationException

  • InitializeDatabaseConnection() 方法沒有被調(diào)用
  • SimpleMembership 沒有初始化(或者在網(wǎng)站配置中禁用)

備注

如果用戶已忘記密碼,請使用 ResetPassword() 方法。ResetPassword() 方法要求一個密碼重置令牌。

確認(rèn)令牌可通過 CreateAccount()、 CreateUserAndAccount()GeneratePasswordResetToken() 方法創(chuàng)建。

密碼可通過代碼重置,但是一般過程是發(fā)送電子郵件給用戶(帶有令牌和指向頁面的鏈接),這樣用戶就可以通過新的令牌確認(rèn)新的密碼:

@{
newPassword = Request["newPassword"];
confirmPassword = Request["confirmPassword"];
token = Request["token"];
if isPost
{
??? // input testing is ommitted here to save space
??? retunValue = ResetPassword(token, newPassword);
}
}
<h1>Change Password</h1>

<form method="post" action="">

<label for="newPassword">New Password:</label>
<input type="password" id="newPassword" name="newPassword" title="New password" />

<label for="confirmPassword">Confirm Password:</label>
<input type="password" id="confirmPassword" name="confirmPassword" title="Confirm new password" />

<label for="token">Pasword Token:</label>
<input type="text" id="token" name="token" title="Password Token" />

<p class="form-actions">
<input type="submit" value="Change Password" title="Change password" />
</p>

</form>


技術(shù)數(shù)據(jù)

名稱
Namespace WebMatrix.WebData
Assembly WebMatrix.WebData.dll


WebSecurity 對象 WebSecurity 對象
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號