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