如何测试ASP.NET会员密码是否符合配置的复杂性要求?

我有一个ASP.NET页面,允许管理员更改用户的密码。由于管理员不知道用户的密码,因此我使用以下命令:
MembershipUser member = Membership.GetUser(_usernameTextBox.Text);
member.ChangePassword(member.ResetPassword(),_passNewTextBox.Text);

– 如SO question所述。

如果新密码不符合在web.config文件中配置的复杂性要求,则密码将被重置,但不会更改为所需的密码。如果新密码不符合复杂性要求,那么密码根本不应该改变。

有没有一种简单的方法来测试新密码的复杂性要求?

解决方法

您可以使用以下属性来测试密码:

> Membership.PasswordStrengthRegularExpression
> Membership.MinRequiredPasswordLength
> Membership.MinRequiredNonAlphanumericCharacters

请注意,如果您没有在web.config文件中配置密码,PasswordStrengthRegularExpression属性将为空字符串。

有关正则表达式匹配的信息,请参阅Regex.IsMatch(String)上的MSDN参考

感谢马特有帮助的意见。

相关文章

这篇文章主要讲解了“WPF如何实现带筛选功能的DataGrid”,文...
本篇内容介绍了“基于WPF如何实现3D画廊动画效果”的有关知识...
Some samples are below for ASP.Net web form controls:(fr...
问题描述: 对于未定义为 System.String 的列,唯一有效的值...
最近用到了CalendarExtender,结果不知道为什么发生了错位,...
ASP.NET 2.0 page lifecyle ASP.NET 2.0 event sequence cha...