c# - 使用备用密码登录 asp.net 成员(member)

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

我正在制作一个 ASP.NET 应用程序并使用 ASP.NET 成员资格控件供用户登录。我希望用户可以使用普通密码或快速登录(允许用户创建类似于 ATM PIN 的 4 位密码)登录,以获得快速登录体验。我如何实现这一目标?

最佳答案

您需要扩展基本成员(member)资格提供程序并使用它。这是一个起点。

public class DoublePasswordProvider : SqlMembershipProvider
{
    public override bool ValidateUser(string username, string password)
    {
        if (checkPIN(username, password)) return true;
        return base.ValidateUser(username, password);
    }
}

然后编辑 we.config 来使用它:

<membership defaultProvider="DoublePasswordProvider">
      <providers>

        <add name="DoublePasswordProvider" type="YourNamespace.DoublePasswordProvider" connectionStringName="ApplicationServices"
             enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false"
             maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10"
             applicationName="/" />
      </providers>
    </membership>

最后使用标准的asp.net控件(登录、更改密码等等)

关于c# - 使用备用密码登录 asp.net 成员(member),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15021033/

相关文章:

c# - 如何使用 Expression(Of TDelegate).Update 方法

c# - 十进制舍入扩展错误 - 无法使用实例引用访问;用类型名称限定它

c# - Emgu 无法在 IIS 服务器中找到 cvextern

c# - 使用 ASP.net 和 VB.net(或 C#)编辑和删除 XML 文件中的数据

c# - 有条件地设置滚动条按钮大小

c# - 在 javascript 代码中调用 ASP 方法

asp.net - 从 asp.net 页面查看器 Web 部件显示当前经过身份验证的 Sharepoint 用户

安全模型 : log in to third-party site with user's credentials

javascript - 如何减小 AspNet.ApplicationCookie 的大小以及其中的内容?

c# - Asp.NET 登录控件 : Dealing with brackets in passwords