2013-10-13 133 views
3

在更改密码页面中,我们有此代码,所以如果我们想要将密码策略更改为“StrongPolicy”,我们有办法还是默认情况下?ASP.NET配置文件(成员资格)中的密码策略

我们也可以改变它为弱政策?

我读了MSDN,但找不到它。

Membership mu ; 
mu=Membership.GetUser(txtUserName.Text); 

mu.UnlockUser(); 
var newPass= mu.ResetPassword(); 
mu.ChangePassword(newPass,TxtPassword.Text); 

回答

2

默认情况下在.NET中memebership提供商限制你有密码长度7(至少),其中一个字符必须是字母数字。

虽然有许多方法可以改变这种情况。可以检查Changing password policy setting in membership provider.

使用最小长度和非字母数字字符

<membership ...> 
    <providers> 
    <add minRequiredPasswordLength=10 minRequiredNonalphanumericCharacters=2 .../> 
    </providers> 
</membership> 

使用正则表达式

上面的代码是从相同的位点。

1

默认情况下,ASP.NET成员身份执行强密码。如果你想让它更弱,在Web.config中

<membership> 
    <providers> 
     <add passwordStrengthRegularExpression= "" .../> 
     <add minRequiredPasswordLength=... minRequiredNonalphanumericCharacters=2 .../> 
    </providers> 
</membership> 

MSDN

更改配置设置,默认情况下,ASP.NET会员供应商强制使用强密码。 例如,SqlMembershipProvider和ActiveDirectoryMembership提供程序确保密码长度至少为 七个字符,且至少包含一个非字母数字 字符。确保您的成员资格提供者配置至少强制执行 密码。要配置您的提供商所执行的精确密码 复杂的规则,您可以设置以下 附加属性:

的更多信息: http://msdn.microsoft.com/en-us/library/ff649487.aspx

5

如果您使用的是MVC 5(可能是MVC4,未经检查)。

Theres一个很好的简单的方法来改变这个不改变配置。在解决方案资源管理器中,去

“App_Start”> IdentityConfig

在这里你会看到一个passwordvalidator,改变这些设置将让你改变你的网站要求密码的复杂性:

manager.PasswordValidator = new PasswordValidator { RequiredLength = 6, RequireNonLetterOrDigit = true, RequireDigit = true, RequireLowercase = true, RequireUppercase = true, };

+0

这是为ASP.NET身份而不是ASP.NET成员资格。 – jrummell