如何为ASP.NET身份设置密码规则?

在我的ASP.NET应用程序中,我在web.config中的DefaultMembershipProvider和sqlMembershipProvider中有以下设置:
enablePasswordRetrieval="true"
passwordFormat="Clear" 
requiresQuestionAndAnswer="false"

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

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

解决方法

您需要提供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;
    }
}

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....