SignInManager now checks lockout support
This commit is contained in:
parent
f36ca3fb33
commit
bfbd8892a1
|
|
@ -167,7 +167,7 @@ namespace Microsoft.AspNet.Identity.Security
|
|||
{
|
||||
return SignInStatus.Failure;
|
||||
}
|
||||
if (await UserManager.IsLockedOutAsync(user))
|
||||
if (UserManager.SupportsUserLockout && await UserManager.IsLockedOutAsync(user))
|
||||
{
|
||||
return SignInStatus.LockedOut;
|
||||
}
|
||||
|
|
@ -177,7 +177,7 @@ namespace Microsoft.AspNet.Identity.Security
|
|||
return SignInStatus.Success;
|
||||
//TODO: return await SignInOrTwoFactor(user, isPersistent);
|
||||
}
|
||||
if (shouldLockout)
|
||||
if (UserManager.SupportsUserLockout && shouldLockout)
|
||||
{
|
||||
// If lockout is requested, increment access failed count which might lock out the user
|
||||
await UserManager.AccessFailedAsync(user);
|
||||
|
|
|
|||
|
|
@ -180,6 +180,7 @@ namespace Microsoft.AspNet.Identity.Security.Test
|
|||
// Setup
|
||||
var user = new TestUser { UserName = "Foo" };
|
||||
var manager = MockHelpers.MockUserManager<TestUser>();
|
||||
manager.Setup(m => m.SupportsUserLockout).Returns(true).Verifiable();
|
||||
manager.Setup(m => m.IsLockedOutAsync(user, CancellationToken.None)).ReturnsAsync(true).Verifiable();
|
||||
manager.Setup(m => m.FindByNameAsync(user.UserName, CancellationToken.None)).ReturnsAsync(user).Verifiable();
|
||||
var context = new Mock<HttpContext>();
|
||||
|
|
@ -203,6 +204,7 @@ namespace Microsoft.AspNet.Identity.Security.Test
|
|||
// Setup
|
||||
var user = new TestUser { UserName = "Foo" };
|
||||
var manager = MockHelpers.MockUserManager<TestUser>();
|
||||
manager.Setup(m => m.SupportsUserLockout).Returns(true).Verifiable();
|
||||
manager.Setup(m => m.IsLockedOutAsync(user, CancellationToken.None)).ReturnsAsync(false).Verifiable();
|
||||
manager.Setup(m => m.FindByNameAsync(user.UserName, CancellationToken.None)).ReturnsAsync(user).Verifiable();
|
||||
manager.Setup(m => m.CheckPasswordAsync(user, "password", CancellationToken.None)).ReturnsAsync(true).Verifiable();
|
||||
|
|
@ -258,6 +260,7 @@ namespace Microsoft.AspNet.Identity.Security.Test
|
|||
// Setup
|
||||
var user = new TestUser { UserName = "Foo" };
|
||||
var manager = MockHelpers.MockUserManager<TestUser>();
|
||||
manager.Setup(m => m.SupportsUserLockout).Returns(true).Verifiable();
|
||||
manager.Setup(m => m.IsLockedOutAsync(user, CancellationToken.None)).ReturnsAsync(false).Verifiable();
|
||||
manager.Setup(m => m.FindByNameAsync(user.UserName, CancellationToken.None)).ReturnsAsync(user).Verifiable();
|
||||
manager.Setup(m => m.CheckPasswordAsync(user, "bogus", CancellationToken.None)).ReturnsAsync(false).Verifiable();
|
||||
|
|
@ -305,6 +308,7 @@ namespace Microsoft.AspNet.Identity.Security.Test
|
|||
lockedout = true;
|
||||
return Task.FromResult(IdentityResult.Success);
|
||||
}).Verifiable();
|
||||
manager.Setup(m => m.SupportsUserLockout).Returns(true).Verifiable();
|
||||
manager.Setup(m => m.IsLockedOutAsync(user, CancellationToken.None)).Returns(() => Task.FromResult(lockedout));
|
||||
manager.Setup(m => m.FindByNameAsync(user.UserName, CancellationToken.None)).ReturnsAsync(user).Verifiable();
|
||||
manager.Setup(m => m.CheckPasswordAsync(user, "bogus", CancellationToken.None)).ReturnsAsync(false).Verifiable();
|
||||
|
|
|
|||
Loading…
Reference in New Issue