Asp.net mvc MVC 3会员服务重置密码问题
我目前有一个MVC3应用程序,当用户忘记密码时,它要求安全答案是正确的 但是,我希望系统管理员能够在不知道安全答案的情况下重置任何用户的密码Asp.net mvc MVC 3会员服务重置密码问题,asp.net-mvc,asp.net-mvc-3,asp.net-membership,Asp.net Mvc,Asp.net Mvc 3,Asp.net Membership,我目前有一个MVC3应用程序,当用户忘记密码时,它要求安全答案是正确的 但是,我希望系统管理员能够在不知道安全答案的情况下重置任何用户的密码 有什么可能的解决方案吗?我最终为此解决方案使用了两个不同的提供商。 这两个提供程序都已添加到应用程序的Web.Config文件中: <membership> <providers> <clear/> <add name="ProviderRequiredAnswer" .......
有什么可能的解决方案吗?我最终为此解决方案使用了两个不同的提供商。 这两个提供程序都已添加到应用程序的Web.Config文件中:
<membership>
<providers>
<clear/>
<add name="ProviderRequiredAnswer" .......
enablePasswordReset="true" requiresQuestionAndAnswer="true" ...... />
<add name="ProviderNoRequiredAnswer" ......
enablePasswordReset="true" requiresQuestionAndAnswer="false" ...... />
</providers>
</membership>
当普通用户忘记密码并需要重置密码时,我将通过以下方式获得使用第一个提供程序的用户:
成员资格用户=
Membership.Providers[“ProviderRequiredAnswer”].GetUser(model.userToReset,false)
string autoGenPass=userToReset.ResetPassword(model.PasswordAnswer)强>
bool resetpasswordsucceed=userToReset.ChangePassword(autoGenPass,model.NewPassword)
另一方面,如果没有安全答案的系统管理员需要重置用户的密码,我将通过以下方式使用第二个提供程序获取用户:
成员资格用户=
Membership.Providers[“ProviderNoRequiredAnswer”].GetUser(model.userToReset,false)
string autoGenPass=userToReset.ResetPassword()强>
bool resetpasswordsucceed=userToReset.ChangePassword(autoGenPass,model.NewPassword) 您能显示您当前拥有的代码吗?关于管理员页面,您有什么设置?更多的细节会有帮助。这是一个有趣的解决方案。我甚至不知道你可以像那样使用多个提供者。