dotNET Core Web API+JWT(Bearer Token)认证+Swagger UI

本文介绍了如何创建一个.NET Core Web API项目,添加JWT(Bearer Token)认证,集成Swagger UI,并调试API。通过Startup.cs文件配置服务和授权,自定义API响应数据类型,创建OAuthController来生成和验证JWT。同时,详细说明了在Swagger中添加JWT认证功能,以及在调试过程中如何获取和使用JWT token。
摘要由CSDN通过智能技术生成

1、创建.net core web api项目:

Create a Web API with ASP.NET Core and Visual Studio

按照上面链接创建项目。

2、添加JWT(Bearer Token)认证

  • 在项目的Startup.cs文件中的ConfigureServices方法添加以下代码添加并配置JWT认证:
            //添加jwt验证:services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
    .AddJwtBearer(options => {
        options.TokenValidationParameters = new TokenValidationParameters
        {
            ValidateIssuer = true,//是否验证Issuer
            ValidateAudience = true,//是否验证Audience
            ValidateLifetime = true,//是否验证失效时间
            ValidateIssuerSigningKey = true,//是否验证SecurityKey
            ValidAudience = Configuration["audience"],//Audience
            ValidIssuer = Configuration["issuer"],//Issuer,这两项和签发jwt的设置一致
            IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(Configuration["SecurityKey"]))//拿到SecurityKey
        };
     });

其中 Configuration["audience"]、Configuration["issuer"]、Configuration["SecurityKey"]为读取项目中appsettings.json文件中的自定义字符串。

appsettings.json文件:

{
  "Logging": {
    "LogLevel": {
      "Default": "Warning"
    }
  },
  "AllowedHosts": "*",
  "SecurityKey": "dd%88*377f6d&f£$$£$#$%#$%#$FF33fssDG^!3",
  "issuer": "guetServer",
  "audience": "guetClient"
}
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值