Политика паролей в профиле ASP.NET (членство)
На странице смены пароля у нас есть этот код, поэтому, если мы хотим изменить политику паролей на "StrongPolicy", есть ли у нас способ или он по умолчанию?
Также мы можем изменить это к слабой политике?
Я прочитал MSDN, но не смог его найти.
Membership mu ;
mu=Membership.GetUser(txtUserName.Text);
mu.UnlockUser();
var newPass= mu.ResetPassword();
mu.ChangePassword(newPass,TxtPassword.Text);
3 ответа
По умолчанию поставщик членства в.net ограничивает вас паролем длиной 7(по крайней мере), один из которых должен быть буквенно-цифровым.
Хотя есть много способов, которыми вы можете изменить это. Вы можете проверить изменение политики паролей в провайдере членства.
Использование минимальной длины и не алфавитно-цифрового символа
<membership ...>
<providers>
<add minRequiredPasswordLength=10 minRequiredNonalphanumericCharacters=2 .../>
</providers>
</membership>
Используя регулярное выражение
<membership ...>
<providers>
<add passwordStrengthRegularExpression=
"^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$" .../>
</providers>
</membership>
Код выше с того же сайта.
Если вы используете MVC 5 (возможно, MVC4, не проверил).
Есть хороший простой способ изменить это без изменения конфигурации. В обозревателе решений перейдите на
'App_Start' > IdentityConfig
Здесь вы увидите пароль-валидатор, изменение этих настроек позволит вам изменить сложность паролей, необходимых для вашего сайта:
manager.PasswordValidator = new PasswordValidator
{
RequiredLength = 6,
RequireNonLetterOrDigit = true,
RequireDigit = true,
RequireLowercase = true,
RequireUppercase = true,
};
По умолчанию членство в 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