ASP.NET Core 3.1 系列之 Web API 添加身份验证Jwt
ASP.NET Core 3.1 系列之 Web API 中间件篇 (一)
身份验证(Jwt)中间件使用步骤
添加 NuGet程序包
添加包:Microsoft.AspNetCore.Authentication.JwtBearer
修改 Startup.cs 文件
services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme).AddJwtBearer(options =>
{options.TokenValidationParameters = new TokenValidationParameters{RequireExpirationTime = true,ValidateIssuer = true,ValidateAudience = true,ValidateLifetime = true,ValidateIssuerSigningKey = true,ClockSkew = TimeSpan.Zero,ValidIssuer = "testIssuer",ValidAudience = "testAudience",IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes("2342423fsklfjafjlkj234k23j2kj3jkljdf"))};
});
app.UseAuthentication();
app.UseAuthorization();
添加生成Token方法
public string GetToken()
{var claims = new[] { new Claim(ClaimTypes.Name, "testUser") };var key = new SymmetricSecurityKey(Encoding.UTF8.GetBytes("2342423fsklfjafjlkj234k23j2kj3jkljdf"));var jwtToken = new JwtSecurityToken(claims: claims,issuer: "testIssuer",audience: "testAudience",expires: DateTime.Now.AddMinutes(5),signingCredentials: new SigningCredentials(key, SecurityAlgorithms.HmacSha256));return new JwtSecurityTokenHandler().WriteToken(jwtToken);
}
使用
请求头携带样例
Authorization:Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoidGVzdFVzZXIiLCJleHAiOjE2NTQxNTY4NDcsImlzcyI6InRlc3Q2NjY2NjY2IiwiYXVkIjoidGVzdDIyMjIyMTExMSJ9.xV_ma0Q2qXg9kIzzpk7YhR_UTs5DfnvLuayBsGCGMac
更多中间件使用教程
【日志(Log4Net)使用教程 】
【后台定时任务(Hangfire)使用教程】
ASP.NET Core 3.1 系列之 Web API 添加身份验证Jwt相关推荐
- Asp.Net MVC及Web API添加身份验证及错误处理的过滤器
先说身份验证的问题.无论是mvc还是api都有一个安全性的问题,未通过身份验证的人能不能访问的问题.我们新一个空项目时,默认是没有身份验证的,除非你在控制器类或者方法上面加上Authorize属性才会 ...
- 【视频教程】使用 ASP.NET Core 3.x 构建 RESTful Web API 已完结
使用 ASP.NET Core 3.x 构建 RESTful Web API 的视频教程已经完结,共50讲,约10.5小时. B站可看,点击原文链接. 度娘盘可下载完整视频: https://pan. ...
- 使用Http-Repl工具测试ASP.NET Core 2.2中的Web Api项目
今天,Visual Studio中没有内置工具来测试WEB API.使用浏览器,只能测试http GET请求.您需要使用Postman,SoapUI,Fiddler或Swagger等第三方工具来执行W ...
- 在ASP.NET Core 2.0中创建Web API
目录 介绍 先决条件 软件 技能 使用代码 第01步 - 创建项目 第02步 - 安装Nuget包 步骤03 - 添加模型 步骤04 - 添加控制器 步骤05 - 设置依赖注入 步骤06 - 运行We ...
- 在ASP.NET Core MVC中构建简单 Web Api
Getting Started 在 ASP.NET Core MVC 框架中,ASP.NET 团队为我们提供了一整套的用于构建一个 Web 中的各种部分所需的套件,那么有些时候我们只需要做一个简单的 ...
- 使用静态基类方案让 ASP.NET Core 实现遵循 HATEOAS Restful Web API
Hypermedia As The Engine Of Application State (HATEOAS) HATEOAS(Hypermedia as the engine of applicat ...
- 用 Visual Studio 和 ASP.NET Core MVC 创建首个 Web API
原文:Building Your First Web API with ASP.NET Core MVC and Visual Studio 作者:Mike Wasson 和 Rick Anderso ...
- 在ASP.NET Core 2.2 中创建 Web API并结合Swagger
一.创建 ASP.NET Core WebApi项目 二.添加 三. ----------------------------------------------------------- 一.创建项 ...
- 如何基于asp.net core的Identity框架在mysql上作身份验证处理
首先了解这个概念,我一开始也是理解和掌握基本的概念,再去做程序的开发.Identity框架是微软自己提供,基于.net core平台,可拓展.轻量 级.面向多个数据库的身份验证框架.IdentityS ...
最新文章
- 《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之44---QChat 技术...
- [转]C#导出到EXCEL
- 你真的明确知道它们的用法吗-从基础学起
- linux下如何修改weblogic console登陆的用户名和密码
- 3.2.2 请求分页管理方式
- 「新房+电商+大数据」如何塑造满意度达 99.8% 的万亿市场领路人?
- kibana操作elasticsearch:词条匹配(term)
- 设计模式之_Strategy_01
- 【转】牛人杰作 管饭哥登场
- Stm32:地址空间划分
- #333. 【NOIP2017】宝藏
- CCF NOI1050 矩阵乘法
- cesium:获取点击实体点的坐标位置
- 一个layer可以跟着画完的线移动ios程序 好玩啊。
- cisco路由器OSPF基础配置命令
- linux启动项加命令,启动项 命令(linux 添加开机启动项的三种方法)
- 拉普拉斯变换的定义-笔记
- 使用函数提取姓别和出生日期:
- 苹果操作系统 leopard 10.5 (PC破解完全中文安装版,IBM X40安装成功)
- 如何取SQL结果集的第一条记录