如何在 ASP.NET Core 2.0 中配置登录尝试并由管理员手动解锁?

Kul*_*ill 3 c# asp.net asp.net-core-mvc asp.net-core-2.0

我浏览了这个答案,但 ASP.NET Core 2.0 中缺少很多东西。

我做了 shouldLockout: true

await `SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout: true);`
Run Code Online (Sandbox Code Playgroud)

现在,用户在五次失败尝试后被锁定,并且在一段时间(大约 5 分钟)后自动解锁。

我在哪里可以像旧的 ASP.NET 版本一样更改尝试次数

manager.DefaultAccountLockoutTimeSpan = TimeSpan.FromMinutes(3);
Run Code Online (Sandbox Code Playgroud)

以及管理员如何能够在此期间手动解锁?

And*_*rew 6

要更改尝试次数,请在身份选项中进行设置:

services.AddIdentity<ApplicationUser, IdentityRole>(options =>
{
    // Lockout settings
    options.Lockout.AllowedForNewUsers = true;
    options.Lockout.DefaultLockoutTimeSpan = TimeSpan.FromMinutes(5);
    options.Lockout.MaxFailedAccessAttempts = 5; 
})
.AddEntityFrameworkStores<ApplicationDbContext>()
.AddDefaultTokenProviders();
Run Code Online (Sandbox Code Playgroud)

要解锁用户,请重置锁定结束日期。比如:要解锁的用户在await _userManager.SetLockoutEndDateAsync(user, null);哪里。user