如何控制MembershipUser.ResetPassword()格式

And*_*son 10 asp.net passwords asp.net-membership reset

是否可以控制通过调用MembershipUser.ResetPassword()自动生成的密码格式?

我希望能够允许或不允许生成的密码中的某些特殊字符.

我正在使用密码格式为Hashed的SqlMembershipProvider.

谢谢.

Osk*_*ard 19

您可能需要分两步执行此操作,如Mark Fitzpatrick在此处所述:http://bytes.com/groups/net-asp/689452-how-reset-users-password-without-having-use-passwordrecovery#post2740740

首先重置密码,然后立即将其更改为您喜欢的格式.显然,不建议使用Mark的示例中的固定字符串 - 您需要实现一些随机字符串生成器.

user.ChangePassword(user.ResetPassword(), MyMethodToGenerateRandomPassword());
Run Code Online (Sandbox Code Playgroud)


Dha*_*ust 1

看一下这篇文章 -更改 SqlMembershipProvider 中自动生成的密码格式

我想出了一种快速方法来破解 SqlMembershipProvider 以生成不太复杂的密码,它就像创建一个继承自 SqlMembershipProvider 的新提供程序类,然后重写GeneratePassword 方法一样简单。

这不是一个完全解决的解决方案,但可能会有所帮助。