在更改密码页面中,我们有此代码,所以如果我们想将密码策略更改为“StrongPolicy”,我们有办法还是默认?
我们也可以将其更改为弱策略吗?
我读了 MSDN,但找不到。
Membership mu ;
mu=Membership.GetUser(txtUserName.Text);
mu.UnlockUser();
var newPass= mu.ResetPassword();
mu.ChangePassword(newPass,TxtPassword.Text);
在更改密码页面中,我们有此代码,所以如果我们想将密码策略更改为“StrongPolicy”,我们有办法还是默认?
我们也可以将其更改为弱策略吗?
我读了 MSDN,但找不到。
Membership mu ;
mu=Membership.GetUser(txtUserName.Text);
mu.UnlockUser();
var newPass= mu.ResetPassword();
mu.ChangePassword(newPass,TxtPassword.Text);
如果您使用的是 MVC 5(可能是 MVC4,尚未检查)。
有一个很好的简单方法可以在不更改配置的情况下更改它。在您的解决方案资源管理器中,转到
'App_Start' > 身份配置
在这里您将看到一个密码验证器,更改这些设置将允许您更改站点所需密码的复杂性:
manager.PasswordValidator = new PasswordValidator
{
RequiredLength = 6,
RequireNonLetterOrDigit = true,
RequireDigit = true,
RequireLowercase = true,
RequireUppercase = true,
};
默认情况下,.net 中的会员资格提供者限制您拥有长度为 7(至少)的密码,并且其中一个字符必须是字母数字。
尽管有很多方法可以改变这一点。您可以在会员提供商中检查更改密码策略设置。
使用最小长度和非字母数字字符
<membership ...>
<providers>
<add minRequiredPasswordLength=10 minRequiredNonalphanumericCharacters=2 .../>
</providers>
</membership>
使用正则表达式
<membership ...>
<providers>
<add passwordStrengthRegularExpression=
"^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$" .../>
</providers>
</membership>
上面的代码来自同一个站点。
默认情况下,ASP.NET Membership 强制使用强密码。如果你想让它变弱,通过更改 Web.config 中的配置设置
<membership>
<providers>
<add passwordStrengthRegularExpression= "" .../>
<add minRequiredPasswordLength=... minRequiredNonalphanumericCharacters=2 .../>
</providers>
</membership>
MSDN
默认情况下,ASP.NET 成员资格提供程序强制使用强密码。例如,SqlMembershipProvider 和 ActiveDirectoryMembership 提供程序确保密码长度至少为 7 个字符且至少包含一个非字母数字字符。确保您的会员提供者配置强制使用至少此强度的密码。要配置提供商强制执行的精确密码复杂性规则,您可以设置以下附加属性: