我们的模块具有找回密码功能,如果用户忘记了密码,他可以找回密码,系统将通过电子邮件发送。我们在 MVC4 上使用 SimpleMembership。我检查了 WebSecurity 类,但它没有“GetPassword”方法。我试图搜索网络,而是找到了这个实现。
var user = System.Web.Security.Membership.GetUser(userName);
password = user.GetPassword();
我在 GetPassword 上收到错误消息“不支持指定的方法。”。我还在我的 web.config 中添加了以下内容,但即使用户对象具有价值,我仍然收到提到的错误。
<membership defaultProvider="simple">
<providers>
<clear />
<add name="simple" type="WebMatrix.WebData.SimpleMembershipProvider,WebMatrix.WebData"
enablePasswordRetrieval="true"
enablePasswordReset="true" requiresQuestionAndAnswer="false"/>
</providers>
...
有没有其他方法可以找回用户的简单会员密码?我可以查询 pages_Membership 表,但密码是加密的。有人知道这个的解密算法吗?我试过 FormsAuthentication.Decrypt(encryptedpassword);
了,但出现错误“'encryptedTicket'参数的值无效。” 尽管传递的密码是加密的。
请帮忙。