如何将 JWT 用于 asp.net Core

Posted

技术标签:

【中文标题】如何将 JWT 用于 asp.net Core【英文标题】:How to use JWT for asp.net Core 【发布时间】:2017-09-27 13:58:24 【问题描述】:

我按照JWT Authentication for Asp.Net Web Api 的回答将JWT 添加到我的asp.net 核心项目中,但.net 核心不支持System.Web.Http.Filters??

任何更好的保护 Web API 的解决方案???

【问题讨论】:

【参考方案1】:

在 ASP.NET Core MVC 中支持过滤器。您可以在 Microsoft.AspNetCore.Mvc.Filters 命名空间中找到它们。以this guide 为例。

请记住,您不需要自己实现 JWT 身份验证过滤器。这已经作为Microsoft.AspNetCore.Authentication.JwtBearer NuGet 包的一部分实现。您只需要通过将app.UseJwtBearerAuthentication(new JwtBearerOptions /* options */ ) 添加到Startup.Configure() 方法来在您的应用中使用JwtBearerAuthentication 中间件。

【讨论】:

以上是关于如何将 JWT 用于 asp.net Core的主要内容,如果未能解决你的问题,请参考以下文章

ASP.net Core 2.0 JWT 令牌刷新

控制器 ASP.net 核心 2.1 中的 Jwt 角色身份验证

如何在 ASP.NET Core 中转储解析的 JWT 令牌?

ASP.NET Core Authorize 属性不适用于 JWT

将 Asp.Net Core 1 转换为 Core 2 后 Jwt 无法正常工作

在 Asp.net Web 服务中集成 JWT