网站建设教程出售用苏州久远网络,网站建设 整改报告,企业建站公司方案,wordpress加入海报功能#x1f4dd;个人主页#xff1a;五敷有你 #x1f525;系列专栏#xff1a;SpringBoot ⛺️稳重求进#xff0c;晒太阳 什么是JWT
JWT简称JSON Web Token#xff0c;也就是通过JSON形式作为Web应用的令牌#xff0c;用于各方面之间安全的将信息作为JSON对象传输… 个人主页五敷有你 系列专栏SpringBoot ⛺️稳重求进晒太阳 什么是JWT
JWT简称JSON Web Token也就是通过JSON形式作为Web应用的令牌用于各方面之间安全的将信息作为JSON对象传输在数据传输过程中
JWT能做什么
1.授权
这是使用JWT的最常见的方案一旦用户登录每个后续请求将包括JWT,从而允许用户访问该令牌允许的路由服务和资源单点登录是当今广泛使用JWT的一项功能因为开销小可以在不同域中广泛使用
2.信息交换
JSON Web Token 是在各方面之间安全传输信息的好方法因为对JWT进行签名(例如使用公钥/私钥对)所以你可以确保发件人是他们听说的人由于签名是使用标头和有效负载计算的因此还可以验证内容是否遭到篡改
为什么是JWT
基于传统的Session认证
1.认证方式
http协议本身是一种无状态的协议而这意味着用户向我们的应用提供了用户名和密码来进行用户认证那么下一次请求时用户还要再一次进行用户认证才行因为Http协议并不知道是哪个用户发出来的请求所以为了识别我们只能在服务器存储一份用户登录的信息这份登录信息会在响应时传递给浏览器告诉其保存为cookie,以便下次请求时发送给我们应用这样我们的应用就能识别是来自哪个用户了这就是传统的session认证。
2.认证流程 3.暴露问题
1.每个用户经过我们的应用认证我们的应用都要在做一次记录以便用户下一次请求的鉴别通常而言session都是保存在内存中的而随着认证的用户越来越多服务器的开端就会增大
2.用户认证之后服务端做认证记录如果认证的记录被保存在内存中的话意味着用户下次请求必须要请求这台服务器上这样才能拿到授权的资源这样在分布式的应用上相应的限制了负载均衡的能力。
3.因为是基于cookie来进行的用户的识别cookie如果被截获用户就会很容器受到跨站请求的伪造攻击
4.在前后台的分离系统中更痛苦