asp.net核心mvc密码验证器

Sem*_*sov 9 c# asp.net validation user-accounts asp.net-core-mvc

在asp.net核心MVC中自定义密码验证规则的简便方法是什么?问题就像有人在这里如何在ASP.Net MVC Identity 2中更改密码验证?唯一的区别是我在Visual Studio 2015中使用asp.net CORE MVC(最新版本).我想删除所有密码验证规则.ApplicationUserManager项目中没有类,我也不确定是否可以在Startup.cs文件中自定义UserManager验证规则.

Isa*_*aac 12

public void ConfigureServices(IServiceCollection services)
{
     services.AddIdentity<ApplicationUser, IdentityRole>(options =>
            {
                options.Password.RequireDigit = true;
                options.Password.RequireLowercase = true;
                options.Password.RequireNonAlphanumeric = true;
                options.Password.RequireUppercase = true;
                options.Password.RequiredLength = 6;
                options.User.AllowedUserNameCharacters = null;
            })
            .AddEntityFrameworkStores<ApplicationDbContext>()
            .AddDefaultTokenProviders();
}
Run Code Online (Sandbox Code Playgroud)

注意:您还应该在RegisterViewModel.Password,ResetPasswordViewModel.Password,ChangePasswordViewModel.NewPassword和SetPasswordViewModel.NewPassword中更改新设置. 在前端启用新验证.


Dmi*_*try 9

如果你想简单地禁用一些密码限制(RequireLowercase,RequiredLength等) - IdentityOptions.Password在Startup中配置,如下所示:

services.Configure<IdentityOptions>(o =>
{
    o.Password.RequiredLength = 12;
});
Run Code Online (Sandbox Code Playgroud)

如果要完全更改密码验证逻辑 - IPasswordValidator在Startup中实现并注册它.