2013-10-13 82 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