Класс MembershipUser Пароль для параметра CreateUser
Я использую конфигурацию ASP.NET для своих пользователей и их ролей. Я также использую класс MembershipUser с его функцией CreateUser. У меня это работает, но мне было что-то интересно.
Когда я добавляю нового пользователя и передаю этой функции его параметр пароля (который в данном случае исходит из текстового поля на странице). Кажется, что он находит и принимает это значение текстового поля только тогда, когда оно составляет 6 символов или более. Например, если я введу ab123, он скажет, что объект не установлен как экземпляр объекта. Однако, если я делаю abc123, он работает нормально. Где это сказано, чтобы сделать это. Я не знал, могу ли я что-то изменить или где это может быть.
Благодарю.
2 ответа
Это определяется в web.config
<membership>
<providers>
<clear/>
<add name="AspNetSqlMembershipProvider"
type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
connectionStringName="ASPNetMembership"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="false"
requiresUniqueEmail="false"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="5"
minRequiredPasswordLength="6"
minRequiredNonalphanumericCharacters="0"
passwordAttemptWindow="10"
passwordStrengthRegularExpression=""
applicationName="/"/>
</providers>
</membership>
В web.config, под членством / провайдерами, <add ...>
Элемент для вашего членства провайдера может, помимо прочего, иметь minRequiredPasswordLength="some number"
,
По-видимому, в machine.config также есть поставщик по умолчанию (согласно MSDN: см. http://msdn.microsoft.com/en-us/library/1b9hw62f.aspx, второй фрагмент кода снизу), так что если вы не не вижу <add>
линии, вы можете использовать линию по умолчанию, которая имеет минимальную длину 7. Чтобы изменить эту строку, вам нужно либо скопировать эту строку machine.config в ваш web.config, изменить имя и отредактировать Параметр таким образом.... или измените значение по умолчанию для всего сервера и проследите, чтобы он обновился.