Remove old V1 method: FindByUsernamePassword

Replaced with FindUser/CheckPassword

Fixes https://github.com/aspnet/Identity/issues/223
This commit is contained in:
Hao Kung 2014-11-12 12:22:50 -08:00
parent d624876ad3
commit 91eac9f74e
3 changed files with 7 additions and 38 deletions

View File

@ -506,26 +506,6 @@ namespace Microsoft.AspNet.Identity
return await Store.GetUserIdAsync(user, cancellationToken);
}
/// <summary>
/// Return a user with the specified username and password or null if there is no match.
/// </summary>
/// <param name="userName"></param>
/// <param name="password"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public virtual async Task<TUser> FindByUserNamePasswordAsync(string userName, string password,
CancellationToken cancellationToken = default(CancellationToken))
{
ThrowIfDisposed();
userName = NormalizeUserName(userName);
var user = await FindByNameAsync(userName, cancellationToken);
if (user == null)
{
return null;
}
return await CheckPasswordAsync(user, password, cancellationToken) ? user : null;
}
/// <summary>
/// Returns true if the password combination is valid for the user
/// </summary>

View File

@ -385,13 +385,6 @@ namespace Microsoft.AspNet.Identity.Test
Assert.False(await manager.CheckPasswordAsync(null, "whatevs"));
}
[Fact]
public async Task FindWithUnknownUserAndPasswordReturnsNull()
{
var manager = MockHelpers.TestUserManager(new EmptyStore());
Assert.Null(await manager.FindByUserNamePasswordAsync("bogus", "whatevs"));
}
[Fact]
public void UsersQueryableFailWhenStoreNotImplemented()
{
@ -566,7 +559,6 @@ namespace Microsoft.AspNet.Identity.Test
await Assert.ThrowsAsync<ArgumentNullException>("claim", async () => await manager.ReplaceClaimAsync(null, null, null));
await Assert.ThrowsAsync<ArgumentNullException>("claims", async () => await manager.AddClaimsAsync(null, null));
await Assert.ThrowsAsync<ArgumentNullException>("userName", async () => await manager.FindByNameAsync(null));
await Assert.ThrowsAsync<ArgumentNullException>("userName", async () => await manager.FindByUserNamePasswordAsync(null, null));
await Assert.ThrowsAsync<ArgumentNullException>("login", async () => await manager.AddLoginAsync(null, null));
await Assert.ThrowsAsync<ArgumentNullException>("loginProvider",
async () => await manager.RemoveLoginAsync(null, null, null));
@ -707,7 +699,6 @@ namespace Microsoft.AspNet.Identity.Test
await Assert.ThrowsAsync<ObjectDisposedException>(() => manager.RemovePasswordAsync(null));
await Assert.ThrowsAsync<ObjectDisposedException>(() => manager.RemoveFromRoleAsync(null, null));
await Assert.ThrowsAsync<ObjectDisposedException>(() => manager.RemoveFromRolesAsync(null, null));
await Assert.ThrowsAsync<ObjectDisposedException>(() => manager.FindByUserNamePasswordAsync(null, null));
await Assert.ThrowsAsync<ObjectDisposedException>(() => manager.FindByLoginAsync(null, null));
await Assert.ThrowsAsync<ObjectDisposedException>(() => manager.FindByIdAsync(null));
await Assert.ThrowsAsync<ObjectDisposedException>(() => manager.FindByNameAsync(null));

View File

@ -258,7 +258,7 @@ namespace Microsoft.AspNet.Identity.Test
Assert.NotNull(logins);
Assert.Equal(1, logins.Count());
Assert.Equal(user, await manager.FindByLoginAsync(login.LoginProvider, login.ProviderKey));
Assert.Equal(user, await manager.FindByUserNamePasswordAsync(user.UserName, "password"));
Assert.True(await manager.CheckPasswordAsync(user, "password"));
}
[Fact]
@ -324,8 +324,8 @@ namespace Microsoft.AspNet.Identity.Test
var stamp = user.SecurityStamp;
Assert.NotNull(stamp);
IdentityResultAssert.IsSuccess(await manager.ChangePasswordAsync(user, password, newPassword));
Assert.Null(await manager.FindByUserNamePasswordAsync(user.UserName, password));
Assert.Equal(user, await manager.FindByUserNamePasswordAsync(user.UserName, newPassword));
Assert.False(await manager.CheckPasswordAsync(user, password));
Assert.True(await manager.CheckPasswordAsync(user, newPassword));
Assert.NotEqual(stamp, user.SecurityStamp);
}
@ -525,8 +525,8 @@ namespace Microsoft.AspNet.Identity.Test
var token = await manager.GeneratePasswordResetTokenAsync(user);
Assert.NotNull(token);
IdentityResultAssert.IsSuccess(await manager.ResetPasswordAsync(user, token, newPassword));
Assert.Null(await manager.FindByUserNamePasswordAsync(user.UserName, password));
Assert.Equal(user, await manager.FindByUserNamePasswordAsync(user.UserName, newPassword));
Assert.False(await manager.CheckPasswordAsync(user, password));
Assert.True(await manager.CheckPasswordAsync(user, newPassword));
Assert.NotEqual(stamp, user.SecurityStamp);
}
@ -547,8 +547,7 @@ namespace Microsoft.AspNet.Identity.Test
manager.PasswordValidator = new AlwaysBadValidator();
IdentityResultAssert.IsFailure(await manager.ResetPasswordAsync(user, token, newPassword),
AlwaysBadValidator.ErrorMessage);
Assert.NotNull(await manager.FindByUserNamePasswordAsync(user.UserName, password));
Assert.Equal(user, await manager.FindByUserNamePasswordAsync(user.UserName, password));
Assert.True(await manager.CheckPasswordAsync(user, password));
Assert.Equal(stamp, user.SecurityStamp);
}
@ -565,8 +564,7 @@ namespace Microsoft.AspNet.Identity.Test
var stamp = user.SecurityStamp;
Assert.NotNull(stamp);
IdentityResultAssert.IsFailure(await manager.ResetPasswordAsync(user, "bogus", newPassword), "Invalid token.");
Assert.NotNull(await manager.FindByUserNamePasswordAsync(user.UserName, password));
Assert.Equal(user, await manager.FindByUserNamePasswordAsync(user.UserName, password));
Assert.True(await manager.CheckPasswordAsync(user, password));
Assert.Equal(stamp, user.SecurityStamp);
}