Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 3 如何在asp.net membershipprovider中重置用户密码?_Asp.net Mvc 3_Security_Asp.net Membership_Membership Provider - Fatal编程技术网

Asp.net mvc 3 如何在asp.net membershipprovider中重置用户密码?

Asp.net mvc 3 如何在asp.net membershipprovider中重置用户密码?,asp.net-mvc-3,security,asp.net-membership,membership-provider,Asp.net Mvc 3,Security,Asp.net Membership,Membership Provider,在用户使用aspnet成员资格提供程序访问maxInvalidPasswordAttempts后,如何重置用户密码?这里只是一个猜测 或解锁它们我假设这是在管理员用户用新的已知密码覆盖现有用户密码(或忘记我的密码重置类型功能)的情况下进行的。这涉及到一个技巧,因为您需要首先“随机”重置密码,以获得要传递给ResetPassword的已知密码: public bool ResetUserPassword(Guid userId, string newPassword) {

在用户使用aspnet成员资格提供程序访问maxInvalidPasswordAttempts后,如何重置用户密码?

这里只是一个猜测

或解锁它们

我假设这是在管理员用户用新的已知密码覆盖现有用户密码(或忘记我的密码重置类型功能)的情况下进行的。这涉及到一个技巧,因为您需要首先“随机”重置密码,以获得要传递给
ResetPassword
的已知密码:

    public bool ResetUserPassword(Guid userId, string newPassword)
    {
        MembershipUser user = Membership.Provider.GetUser(userId, false);
        // Unlock the user account if necessary
        user.UnlockUser();
        Membership.UpdateUser(user);
        // Trick here is that have to reset it randomly first to be able to provide a new known password
        string tmpPassword = user.ResetPassword();
        return user.ChangePassword(tmpPassword, newPassword);
     }
还有另一种方法,就是将
aspnet_Membership
表中的
Password
(散列)、
PasswordFormat
PasswordSalt
字段直接从另一个已知用户复制到“丢失”用户,但这是一种可怕的黑客行为