UserManager.FindAsync(用户名、密码)在 ASP.NET 5 / Identity 3 中不可用

UserManager.FindAsync(username, password) not available in ASP.NET 5 / Identity 3

我正在尝试将项目升级到 ASP.NET 5 / MVC 6。

AspNet.Identity 附带的 UserManager 曾经有一个 FindAsync 方法,我可以在其中传递用户名和密码。好像没有了

我认为我不需要 SigninManager 或身份验证,因为我正在使用 JWT 不记名身份验证。在授予访问令牌之前,我只需要检查用户名和密码是否有效,

它似乎已重命名为:

public virtual Task<TUser> FindByNameAsync(string userName)

您可以查看 source code for UserManager here

只需使用 UserManager.FindByNameAsync() 查找用户对象,然后检查其密码:

var user = await _userManager.FindByNameAsync(userName);
if(user!=null && await _userManager.CheckPasswordAsync(user, password))
{
    // user is valid do whatever you want
}