【问题标题】:UserManager.FindAsync(username, password) not available in ASP.NET 5 / Identity 3UserManager.FindAsync(username, password) 在 ASP.NET 5 / Identity 3 中不可用
【发布时间】:2016-01-27 15:45:50
【问题描述】:

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

AspNet.Identity 附带的 UserManager 曾经有一个 FindAsync 方法,我可以在其中传递用户名和密码。它似乎不再存在了。

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

【问题讨论】:

    标签: asp.net asp.net-core asp.net-core-mvc


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

      好像改名为:

      public virtual Task<TUser> FindByNameAsync(string userName)
      

      您可以查看source code for UserManager here

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-12-21
        • 1970-01-01
        • 1970-01-01
        • 2022-07-08
        • 2019-06-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多