ASP.NET Membership PasswordLength和其他属性

时间:2010-02-11 02:41:31

标签: c# asp.net asp.net-membership membership membership-provider

我疯了,当我进入网站管理工具创建一些新用户时,它总是告诉我我的密码不是7个字符。

错误消息:

Password length minimum: 7. Non-alphanumeric characters required: 1.

这是我的web.config,好像甚至没有看过。

 <membership userIsOnlineTimeWindow="20">
       <providers>
         <remove name="AspNetSqlProvider" />
          <add name="AspNetSqlProvider" connectionStringName="LocalSqlServer"
               type="System.Web.Security.SqlMembershipProvider"

              applicationName="OCIS"
               minRequiredPasswordLength="3"/>
       </providers>
    </membership>

我甚至到目前为止修改了machine.config并在重新启动后仍然是相同的结果。 非常令人沮丧。

你们有任何想法为什么我的web.config文件似乎被忽略了?

谢谢,

史蒂夫

2 个答案:

答案 0 :(得分:2)

AspNetSqlProvider不是MembershipSection中定义的默认提供商名称。因此,您必须按如下方式设置默认提供程序名称。

<membership defaultProvider="AspNetSqlProvider">
  <providers>
    <add name="AspNetSqlProvider" ... />
  </providers>
</membership>

答案 1 :(得分:0)

您可能永远不需要修改machine.config但我理解您的挫败感。

首先,尝试在本地配置中为您的规范实现提供程序的所有属性,看看会发生什么......

<membership>
  <providers>
    <add
      name="AspNetSqlMembershipProvider"
      type="System.Web.Security.SqlMembershipProvider, ..."
      connectionStringName="LocalSqlServer"
      enablePasswordRetrieval="false"
      enablePasswordReset="true"
      requiresQuestionAndAnswer="true"
      applicationName="/"
      requiresUniqueEmail="false"
      passwordFormat="Hashed"
      maxInvalidPasswordAttempts="5"
      minRequiredPasswordLength="7"
      minRequiredNonalphanumericCharacters="1"
      passwordAttemptWindow="10"
      passwordStrengthRegularExpression=""
    />
  </providers>
</membership>