加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 百科 > 正文

ASP.NET Core使用JWT认证授权的方法

发布时间:2020-11-23 22:07:50 所属栏目:百科 来源:网络整理
导读:副标题#e# 短视频,自媒体,达人种草一站服务 这篇文章主要介绍了ASP.NET Core使用JWT认证授权的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 demo地址: https://github.

public void ConfigureServices(IServiceCollection services)
    {
      services.AddControllers();
      services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)//默认授权机制
        .AddJwtBearer(options =>
        {
          options.TokenValidationParameters=new TokenValidationParameters()
          {
            ValidateIssuer = true,
            ValidateAudience = true,
            ValidateLifetime = true,
            ValidateIssuerSigningKey = true,
            ValidIssuer = _tokenParameter.Issuer,
            ValidAudience = _tokenParameter.Audience,
            IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(_tokenParameter.SecurityKey))
          };
        });
    }

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
    {
      if (env.IsDevelopment())
      {
        app.UseDeveloperExceptionPage();
      }

app.UseRouting();
      app.UseAuthentication();
      app.UseAuthorization();

app.UseEndpoints(endpoints =>
      {
        endpoints.MapControllers();
      });
    }
  }
}

3、在资源控制器上添加[Authorize]属性,以启用认证授权访问API资源

   [ApiController]
  [Route("[controller]")]
  [Authorize]
  public class WeatherForecastController : ControllerBase
  {
    private static readonly string[] Summaries = new[]
    {
      "Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching"
    };

private readonly ILogger<WeatherForecastController> _logger;

public WeatherForecastController(ILogger<WeatherForecastController> logger)
    {
      _logger = logger;
    }

[HttpGet]
    public IEnumerable<WeatherForecast> Get()
    {
      var rng = new Random();
      return Enumerable.Range(1, 5).Select(index => new WeatherForecast
      {
        Date = DateTime.Now.AddDays(index),
        TemperatureC = rng.Next(-20, 55),
        Summary = Summaries[rng.Next(Summaries.Length)]
      })
      .ToArray();
    }
  }

到此这篇关于ASP.NET Core使用JWT认证授权的方法的文章就介绍到这了,更多相关ASP.NET Core JWT认证授权 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读