如何设置ASP.NET标识的密码规则?

IT *_*DAV 10 asp.net asp.net-membership sqlmembershipprovider visual-studio-2013 asp.net-identity

在我的ASP.NET应用程序中,我在web.config中的DefaultMembershipProvider和SqlMembershipProvider中有以下设置:

enablePasswordRetrieval="true"
passwordFormat="Clear" 
requiresQuestionAndAnswer="false" 
Run Code Online (Sandbox Code Playgroud)

它们是摘要式身份验证所必需的.我想转向ASP.NET身份.我正在使用自动化工具来更新我管理的所有web.config文件.

如何在Visual Studio 2013生成的项目中为ASP.NET Identity设置这些设置?

jd4*_*d4u 19

您需要提供IPasswordHasher可以提供清除密码而无需散列的实现.您可以将UserManager.PasswordHasher设置为您的实现.

截至目前,Identity没有可配置的web.config设置.您需要提供适当的可配置代码组合,主要在Startup.cs中

建议不要以明文格式存储密码.

public class ClearPassword : IPasswordHasher
{
    public string HashPassword(string password)
    {
        return password;
    }

    public PasswordVerificationResult VerifyHashedPassword(string hashedPassword, string providedPassword)
    {
        if(hashedPassword.Equals(providedPassword))
            return PasswordVerificationResult.Success;
        else return PasswordVerificationResult.Failed;
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 谢谢jd4u,但我无法得到,在哪里添加这个类以及在哪里调用它? (2认同)