diff --git a/samples/IdentitySample.Mvc/Controllers/AccountController.cs b/samples/IdentitySample.Mvc/Controllers/AccountController.cs
index 85006948b4..d7b462da76 100644
--- a/samples/IdentitySample.Mvc/Controllers/AccountController.cs
+++ b/samples/IdentitySample.Mvc/Controllers/AccountController.cs
@@ -46,7 +46,7 @@ namespace IdentitySample.Controllers
ViewBag.ReturnUrl = returnUrl;
if (ModelState.IsValid)
{
- var result = await SignInManager.PasswordSignInAsync(model.UserName, model.Password, model.RememberMe, shouldLockout: false);
+ var result = await SignInManager.PasswordSignInAsync(model.UserName, model.Password, model.RememberMe, lockoutOnFailure: false);
if (result.Succeeded)
{
return RedirectToLocal(returnUrl);
diff --git a/src/Microsoft.AspNet.Identity/LockoutOptions.cs b/src/Microsoft.AspNet.Identity/LockoutOptions.cs
index 89d9a879a7..08ed86ac1e 100644
--- a/src/Microsoft.AspNet.Identity/LockoutOptions.cs
+++ b/src/Microsoft.AspNet.Identity/LockoutOptions.cs
@@ -10,7 +10,7 @@ namespace Microsoft.AspNet.Identity
///
/// If true, will enable user lockout when users are created
///
- public bool EnabledByDefault { get; set; } = false;
+ public bool AllowedForNewUsers { get; set; } = true;
///
/// Number of access attempts allowed for a user before lockout (if enabled)
diff --git a/src/Microsoft.AspNet.Identity/SignInManager.cs b/src/Microsoft.AspNet.Identity/SignInManager.cs
index 11bddeb610..5586f2ba0a 100644
--- a/src/Microsoft.AspNet.Identity/SignInManager.cs
+++ b/src/Microsoft.AspNet.Identity/SignInManager.cs
@@ -160,7 +160,7 @@ namespace Microsoft.AspNet.Identity
}
public virtual async Task PasswordSignInAsync(TUser user, string password,
- bool isPersistent, bool shouldLockout)
+ bool isPersistent, bool lockoutOnFailure)
{
if (user == null)
{
@@ -183,7 +183,7 @@ namespace Microsoft.AspNet.Identity
await ResetLockout(user);
return Logger.Log(await SignInOrTwoFactorAsync(user, isPersistent));
}
- if (UserManager.SupportsUserLockout && shouldLockout)
+ if (UserManager.SupportsUserLockout && lockoutOnFailure)
{
// If lockout is requested, increment access failed count which might lock out the user
await UserManager.AccessFailedAsync(user);
@@ -198,7 +198,7 @@ namespace Microsoft.AspNet.Identity
}
public virtual async Task PasswordSignInAsync(string userName, string password,
- bool isPersistent, bool shouldLockout)
+ bool isPersistent, bool lockoutOnFailure)
{
var user = await UserManager.FindByNameAsync(userName);
if (user == null)
@@ -206,7 +206,7 @@ namespace Microsoft.AspNet.Identity
return SignInResult.Failed;
}
- return await PasswordSignInAsync(user, password, isPersistent, shouldLockout);
+ return await PasswordSignInAsync(user, password, isPersistent, lockoutOnFailure);
}
private static ClaimsIdentity CreateIdentity(TwoFactorAuthenticationInfo info)
diff --git a/src/Microsoft.AspNet.Identity/UserManager.cs b/src/Microsoft.AspNet.Identity/UserManager.cs
index f0350e034c..cb4df128aa 100644
--- a/src/Microsoft.AspNet.Identity/UserManager.cs
+++ b/src/Microsoft.AspNet.Identity/UserManager.cs
@@ -324,7 +324,7 @@ namespace Microsoft.AspNet.Identity
{
return result;
}
- if (Options.Lockout.EnabledByDefault && SupportsUserLockout)
+ if (Options.Lockout.AllowedForNewUsers && SupportsUserLockout)
{
await GetUserLockoutStore().SetLockoutEnabledAsync(user, true, CancellationToken);
}
diff --git a/test/Microsoft.AspNet.Identity.Test/IdentityOptionsTest.cs b/test/Microsoft.AspNet.Identity.Test/IdentityOptionsTest.cs
index a6a27ae4b5..44fd0f1c68 100644
--- a/test/Microsoft.AspNet.Identity.Test/IdentityOptionsTest.cs
+++ b/test/Microsoft.AspNet.Identity.Test/IdentityOptionsTest.cs
@@ -19,7 +19,7 @@ namespace Microsoft.AspNet.Identity.Test
public void VerifyDefaultOptions()
{
var options = new IdentityOptions();
- Assert.False(options.Lockout.EnabledByDefault);
+ Assert.True(options.Lockout.AllowedForNewUsers);
Assert.Equal(TimeSpan.FromMinutes(5), options.Lockout.DefaultLockoutTimeSpan);
Assert.Equal(5, options.Lockout.MaxFailedAccessAttempts);
@@ -58,7 +58,7 @@ namespace Microsoft.AspNet.Identity.Test
{"identity:password:RequireUpperCase", "false"},
{"identity:password:RequireDigit", "false"},
{"identity:password:RequireLowerCase", "false"},
- {"identity:lockout:EnabledByDefault", "TRUe"},
+ {"identity:lockout:AllowedForNewUsers", "FALSe"},
{"identity:lockout:MaxFailedAccessAttempts", "1000"}
};
var builder = new ConfigurationBuilder(new MemoryConfigurationSource(dic));
@@ -82,7 +82,7 @@ namespace Microsoft.AspNet.Identity.Test
Assert.False(options.Password.RequireNonLetterOrDigit);
Assert.False(options.Password.RequireUppercase);
Assert.Equal(10, options.Password.RequiredLength);
- Assert.True(options.Lockout.EnabledByDefault);
+ Assert.False(options.Lockout.AllowedForNewUsers);
Assert.Equal(1000, options.Lockout.MaxFailedAccessAttempts);
}
diff --git a/test/Shared/MockHelpers.cs b/test/Shared/MockHelpers.cs
index 870e1d564e..a07e1999c3 100644
--- a/test/Shared/MockHelpers.cs
+++ b/test/Shared/MockHelpers.cs
@@ -69,6 +69,7 @@ namespace Microsoft.AspNet.Identity.Test
store = store ?? new Mock>().Object;
var options = new Mock>();
var idOptions = new IdentityOptions();
+ idOptions.Lockout.AllowedForNewUsers = false;
options.Setup(o => o.Options).Returns(idOptions);
var userValidators = new List>();
var validator = new Mock>();
diff --git a/test/Shared/UserManagerTestBase.cs b/test/Shared/UserManagerTestBase.cs
index 1dc5089a86..c7314fd208 100644
--- a/test/Shared/UserManagerTestBase.cs
+++ b/test/Shared/UserManagerTestBase.cs
@@ -826,7 +826,6 @@ namespace Microsoft.AspNet.Identity.Test
{
var mgr = CreateManager();
mgr.Options.Lockout.DefaultLockoutTimeSpan = TimeSpan.FromHours(1);
- mgr.Options.Lockout.EnabledByDefault = true;
mgr.Options.Lockout.MaxFailedAccessAttempts = 0;
var user = CreateTestUser();
IdentityResultAssert.IsSuccess(await mgr.CreateAsync(user));
@@ -843,7 +842,6 @@ namespace Microsoft.AspNet.Identity.Test
{
var mgr = CreateManager();
mgr.Options.Lockout.DefaultLockoutTimeSpan = TimeSpan.FromHours(1);
- mgr.Options.Lockout.EnabledByDefault = true;
mgr.Options.Lockout.MaxFailedAccessAttempts = 2;
var user = CreateTestUser();
IdentityResultAssert.IsSuccess(await mgr.CreateAsync(user));
@@ -864,7 +862,6 @@ namespace Microsoft.AspNet.Identity.Test
{
var mgr = CreateManager();
mgr.Options.Lockout.DefaultLockoutTimeSpan = TimeSpan.FromHours(1);
- mgr.Options.Lockout.EnabledByDefault = true;
mgr.Options.Lockout.MaxFailedAccessAttempts = 2;
var user = CreateTestUser();
IdentityResultAssert.IsSuccess(await mgr.CreateAsync(user));
@@ -890,6 +887,7 @@ namespace Microsoft.AspNet.Identity.Test
{
var mgr = CreateManager();
mgr.Options.Lockout.DefaultLockoutTimeSpan = TimeSpan.FromHours(1);
+ mgr.Options.Lockout.AllowedForNewUsers = false;
mgr.Options.Lockout.MaxFailedAccessAttempts = 2;
var user = CreateTestUser();
IdentityResultAssert.IsSuccess(await mgr.CreateAsync(user));
@@ -913,7 +911,6 @@ namespace Microsoft.AspNet.Identity.Test
public async Task UserNotLockedOutWithNullDateTimeAndIsSetToNullDate()
{
var mgr = CreateManager();
- mgr.Options.Lockout.EnabledByDefault = true;
var user = CreateTestUser();
IdentityResultAssert.IsSuccess(await mgr.CreateAsync(user));
Assert.True(await mgr.GetLockoutEnabledAsync(user));
@@ -927,6 +924,7 @@ namespace Microsoft.AspNet.Identity.Test
public async Task LockoutFailsIfNotEnabled()
{
var mgr = CreateManager();
+ mgr.Options.Lockout.AllowedForNewUsers = false;
var user = CreateTestUser();
IdentityResultAssert.IsSuccess(await mgr.CreateAsync(user));
Assert.False(await mgr.GetLockoutEnabledAsync(user));
@@ -939,7 +937,6 @@ namespace Microsoft.AspNet.Identity.Test
public async Task LockoutEndToUtcNowMinus1SecInUserShouldNotBeLockedOut()
{
var mgr = CreateManager();
- mgr.Options.Lockout.EnabledByDefault = true;
var user = CreateTestUser(lockoutEnd: DateTimeOffset.UtcNow.AddSeconds(-1));
IdentityResultAssert.IsSuccess(await mgr.CreateAsync(user));
Assert.True(await mgr.GetLockoutEnabledAsync(user));
@@ -950,7 +947,6 @@ namespace Microsoft.AspNet.Identity.Test
public async Task LockoutEndToUtcNowSubOneSecondWithManagerShouldNotBeLockedOut()
{
var mgr = CreateManager();
- mgr.Options.Lockout.EnabledByDefault = true;
var user = CreateTestUser();
IdentityResultAssert.IsSuccess(await mgr.CreateAsync(user));
Assert.True(await mgr.GetLockoutEnabledAsync(user));
@@ -962,7 +958,6 @@ namespace Microsoft.AspNet.Identity.Test
public async Task LockoutEndToUtcNowPlus5ShouldBeLockedOut()
{
var mgr = CreateManager();
- mgr.Options.Lockout.EnabledByDefault = true;
var lockoutEnd = DateTimeOffset.UtcNow.AddMinutes(5);
var user = CreateTestUser(lockoutEnd: lockoutEnd);
IdentityResultAssert.IsSuccess(await mgr.CreateAsync(user));
@@ -974,7 +969,6 @@ namespace Microsoft.AspNet.Identity.Test
public async Task UserLockedOutWithDateTimeLocalKindNowPlus30()
{
var mgr = CreateManager();
- mgr.Options.Lockout.EnabledByDefault = true;
var user = CreateTestUser();
IdentityResultAssert.IsSuccess(await mgr.CreateAsync(user));
Assert.True(await mgr.GetLockoutEnabledAsync(user));