目前,我使用的是Asp.net内核1.1,EF内核&Asp.net核心身份在我的系统中。我在下面的startup.cs
类中为密码策略进行了配置。
当用户连续登录失败时,是否有禁用帐户的配置?
services.Configure<IdentityOptions>(options =>
{
// Password settings
options.Password.RequireDigit = true;
options.Password.RequiredLength = 6;
options.Password.RequireNonAlphanumeric = true;
options.Password.RequireUppercase = true;
options.Password.RequireLowercase = true;
}
你可以像这个一样简单地完成
options.Lockout.DefaultLockoutTimeSpan = TimeSpan.FromMinutes(30);
options.Lockout.MaxFailedAccessAttempts = 5;
options.Lockout.AllowedForNewUsers = true;
有关更多详细信息,请参阅此链接
在您的帐户控制器中,向下滚动到public async Task<ActionResult> Login(LoginViewModel model, string returnUrl)
一旦到达,将shouldLockout
设置为true
var result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout: true);