C# 如何在web api中实现JWT身份验证?

C# 如何在web api中实现JWT身份验证?,c#,asp.net,asp.net-web-api2,jwt,http-token-authentication,C#,Asp.net,Asp.net Web Api2,Jwt,Http Token Authentication,我需要在我的web api项目中实现基于令牌的身份验证。 通过谷歌搜索,我了解了JWT。但现在我开始挠头,在谷歌上搜索如何为简单的表单授权实现JWT 我找到的链接显示了JWT与OAuth或Identity framework的关系 public HTTPStatusCode Login(string userName, string pwd) { if(userName!=null && pwd !=null) { IDAL dal

我需要在我的web api项目中实现基于令牌的身份验证。 通过谷歌搜索,我了解了JWT。但现在我开始挠头,在谷歌上搜索如何为简单的表单授权实现JWT

我找到的链接显示了JWT与OAuth或Identity framework的关系

public HTTPStatusCode Login(string userName, string pwd)
{
       if(userName!=null && pwd !=null)
       {
         IDAL dal = new AccountService();
         bool isValid = dal.ValidateUser(userName,pwd); //simple dal method to check for the username & password
         if(isValid)
         {
            //here I need to implement JWT.
            return HTTPStatus.Ok;
         }
         else
         {
            return HTTPStatus.BadRequest;
         }
       }
}
但我没有使用OAuth或Identity框架

public HTTPStatusCode Login(string userName, string pwd)
{
       if(userName!=null && pwd !=null)
       {
         IDAL dal = new AccountService();
         bool isValid = dal.ValidateUser(userName,pwd); //simple dal method to check for the username & password
         if(isValid)
         {
            //here I need to implement JWT.
            return HTTPStatus.Ok;
         }
         else
         {
            return HTTPStatus.BadRequest;
         }
       }
}

有人能分享一些演示如何导入JWT的文章吗?

JWT
不能像上面的代码那样“真正”使用username/pwd。如果您想要“基本”的JWT,并以您认为合适的方式实现它,请查看。项目在Hth上。正如@EdSF所说,JWT本身可以用一个简单的库创建(它们只是编码的JSON散列)。使用令牌进行身份验证是一个更大的问题,它涉及到的应用程序更多,而不仅仅是登录路由返回的内容。我写了一篇文章(在ASP.NET Core的上下文中)介绍了一个非常简单的案例: