从基于表单的身份验证中删除安全问

时间:2009-03-08 00:43:50

标签: asp.net forms-authentication

我正在建立一个小网站,它将启用FBA(SqlMembershipProvider),我希望注册尽可能简单,只需提示用户名(电子邮件地址)和密码。

如何从创建用户控件中删除安全问题?

2 个答案:

答案 0 :(得分:3)

我的不好,我把枪瞄准那个。

看起来控件将感知底层提供者是否需要问答。那么,您是否尝试过在web.config中禁用它?

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

下面的错误答案:


QuestionAndAnswerRequired属性设置为false。

答案 1 :(得分:2)

在web.config中设置requiresQuestionAndAnswer =“false”

即:

<membership defaultProvider="MySqlMembershipProvider">
    <providers>
        <clear/>
        <add name="MySqlMembershipProvider" 
            type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" 
            connectionStringName="LocalSQL" 
            enablePasswordRetrieval="false" 
            enablePasswordReset="true" 
            requiresQuestionAndAnswer="false" 
            requiresUniqueEmail="false" 
            passwordFormat="Hashed" 
            maxInvalidPasswordAttempts="15" 
            minRequiredPasswordLength="5" 
            minRequiredNonalphanumericCharacters="0" 
            passwordAttemptWindow="10" 
            passwordStrengthRegularExpression="" 
            applicationName="/"/>
    </providers>
</membership>