ASP.NET核心标识设置不起作用

时间:2017-06-21 15:54:46

标签: identityserver3 identityserver4

我使用ASP.NET Identity实现了Identity Server 4。我问过一个早先的问题,我将如何应用某些登录规则并收到一个答案,解释如何在Startup.cs中添加一些选项。这是我添加到ConfigureServices方法的内容:

services.AddIdentity<ApplicationUser, IdentityRole>(options =>
{
    options.Lockout.DefaultLockoutTimeSpan = TimeSpan.FromMinutes(15);
    options.Lockout.MaxFailedAccessAttempts = 5;
    options.Password.RequiredLength = 9;
    options.Password.RequireDigit = true;
    options.Password.RequireLowercase = true;
    options.Password.RequireUppercase = true;
    options.Password.RequireNonAlphanumeric = false;
    options.SignIn.RequireConfirmedEmail = true;
})
.AddEntityFrameworkStores<ApplicationDbContext>()
.AddDefaultTokenProviders();

密码规则似乎有效,但锁定规则无效。有什么我需要启用的吗?

1 个答案:

答案 0 :(得分:2)

不确定我是怎么错过这个的。锁定功能是PasswordSignInAsyncSignInManager方法中登录过程的一部分。我需要更改的代码行是LoginAccountController方法的一部分:

SignInManager.PasswordSignInAsync(
    model.Email,
    model.Password,
    model.RememberLogin,
    lockoutOnFailure: true); // <- HERE