C# 如何使用oldpassword检查更改成员身份中的密码
我开发了一个web应用程序。它有一个使用ASP.NET成员身份的登录表单。现在我需要添加一个允许更改密码的表单。在设置新密码之前,用户必须输入旧密码C# 如何使用oldpassword检查更改成员身份中的密码,c#,asp.net,asp.net-membership,C#,Asp.net,Asp.net Membership,我开发了一个web应用程序。它有一个使用ASP.NET成员身份的登录表单。现在我需要添加一个允许更改密码的表单。在设置新密码之前,用户必须输入旧密码 如何检查旧密码是否有效?如果用户已登录,则您拥有用户Id 因此,使用它检索所有用户信息,如用户名密码 现在,您可以要求用户输入其旧密码,现在匹配这两个密码(如果两者都匹配),然后用新密码更改密码。如果用户登录,则您拥有用户Id // checking if the old password is correct if (Membership.Val
如何检查旧密码是否有效?如果用户已登录,则您拥有用户Id 因此,使用它检索所有用户信息,如用户名密码
现在,您可以要求用户输入其旧密码,现在匹配这两个密码(如果两者都匹配),然后用新密码更改密码。如果用户登录,则您拥有用户Id
// checking if the old password is correct
if (Membership.ValidateUser(username, oldPassword))
{
// setting a new password
string newPassword = MembershipUser.ResetPassword();
}
因此,使用它检索所有用户信息,如用户名密码
现在,您可以要求用户输入其旧密码,现在匹配这两个密码,如果两者都匹配,然后使用新密码更改密码
// checking if the old password is correct
if (Membership.ValidateUser(username, oldPassword))
{
// setting a new password
string newPassword = MembershipUser.ResetPassword();
}
使用ChangePassword控件
使用ChangePassword控件
您好,谢谢您的回复。我如何从会员处获取旧密码。您好,谢谢您的回复。我如何从会员处获取旧密码。您好,只需更改单个密码,因为需要基于旧密码更改密码您的会员资格提供商配置了什么?如果是
散列的
则无法检查旧密码,因为它是单向散列函数。如果您尝试调用GetPassword()
,即使您在web.config中配置了enablePasswordRetrieval=true
,会员资格提供商也会抛出一个异常。另一个先决条件是什么。是的,我想在我的网站中添加更改密码功能。我重新编写了原始问题-我认为现在更容易理解。您好,只需更改单个密码,因为需要基于旧密码更改密码您的会员资格提供商配置了什么?如果是散列的
则无法检查旧密码,因为它是单向散列函数。如果您尝试调用GetPassword()
,即使您在web.config中配置了enablePasswordRetrieval=true
,会员资格提供商也会抛出一个异常,这是另一个先决条件。是的,我想在我的站点中添加更改密码功能。我重新编写了原始问题-我认为现在更容易理解了。