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

发布于 2024-07-14 21:07:54 字数 111 浏览 7 评论 0原文

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

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

I'm building a small website which will have FBA enabled (SqlMembershipProvider) and I want signup to be as simple as possible, just a prompt for username (email address) and password.

How do I remove the security question from the create user control?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

纵山崖 2024-07-21 21:07:54

我的错,我抢了那一个。

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

<前><代码><添加
名称=“AspNetSqlMembershipProvider”
类型 =“System.Web.Security.SqlMembershipProvider,...”
连接字符串名称=“本地SqlServer”
启用密码检索=“假”
启用密码重置=“真”
**requiresQuestionAndAnswer="false"**
应用程序名称=“/”
需要UniqueEmail =“假”
密码格式=“散列”
maxInvalidPasswordAttempts =“5”
minRequiredPasswordLength =“7”
minRequiredNonalphanumericCharacters =“1”
密码尝试窗口=“10”
密码强度正则表达式=""
>>

以下错误答案:


设置 QuestionAndAnswerRequired< /a> 属性为 false。

My bad, I jumped the gun on that one.

It looks like the control will sense if the underlying provider required a question and answer. So, have you tried disabling it in the 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=""
/>

Wrong answer below:


Set the QuestionAndAnswerRequired property to false.

一个人的旅程 2024-07-21 21:07:54

在 web.config 中设置 requireQuestionAndAnswer="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>

Set requiresQuestionAndAnswer="false" in your web.config

i.e.:

<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>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文