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 ...
最新文章
- Java绘图之AWT中的继承关系图
- 脑电分析系列[MNE-Python-2]| MNE中数据结构Epoch及其创建方法
- 如何通过ip地址查找PC接在交换机的某个端口
- silverlight, 双击事件
- 异步/同步、阻塞/非阻塞的理解
- PE文件结构 - NT头学习
- C++反转字符串的算法(附完整源码)
- [转]详细讲解提高数据库查询效率的实用方法、外键关于性能
- Python实例讲解 -- 定时播放 (闹钟+音乐)
- html下拉表覆盖透明,css透明元素如何遮挡住fixed元素
- 计算机网络医院拓扑图方案设计,【方案】某医院计算机网络综合布线系统设计...
- 软件测试——bug相关知识
- 画 ArcFace 中的 margin 曲线
- Blend 混合模式
- 错误代码1500什么意思_ADSL的一些错误代码是什么意思?
- [Unity][插件]游戏中显示FPS帧数
- 无需安装Microsoft Office和Adobe实现办公文档操作,Spire.Office免费资源清单一览
- I am a boy!
- ccs工程文件类型和作用
- 硬件加密算法HITAG2流程分析
热门文章
- java中生成yyyyMMdd001此类流水单号
- 数据压缩实验五 MPEG音频编码
- 《Adobe InDesign CS5中文版经典教程》—第1课复习
- 上海迪士尼度假区和斯凯奇达成数年战略联盟
- linux下c 上传图片到mysql_linux c做服务端使用多线程接收图片并且将图片写入数据库...
- 使用RESS改善响应式Web设计
- 《C++入门经典(第6版)》——2.7 作业
- (13)什么是RPA的POC?
- 华南理工大学计算机应用技术如何,余志文(华南理工大学计算机学院教授、博导)_百度百科...
- recovery模式学习总结