springcloud解析token的学习笔记

本文解析了JSON Web Token(JWT)的结构,包括请求头、请求信息和key信息,并详细介绍了前端与后端间使用JWT进行鉴权的流程。同时,文章探讨了负载均衡、集群和注册中心在微服务架构中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近学了一点token解析方面的东西,记录一下
jwt:json web token
如下图,是一张前端调用后端的请求头
在这里插入图片描述
其中Authorization中存的就是token了,他由三部分组成,每部分之间隔着一个点,结构是:请求头(采用了什么加密协议).请求信息(业务信息,包括登录人的id,权限,时间戳以及自己想存进来的任何东西).key信息(秘钥)
因此我们可以得知,每次登陆的时候,第一段信息一定是相同的(因为加密方式都是一样的嘛),第二段信息是不同的,因为时间戳是变化的,第三段信息我还不清楚,按理来说每次都是用一个key,应该是一样的呀,事实上每次重新登录后第三段都是变化的,这里初步估计是不是拼接了不同的字符串。
下图是我这段token的解析信息:
在这里插入图片描述
我这里加密方式是HS256,所以红字每次都是一样的,紫字的exp和iat是时间戳,所以每次都是变化的。蓝字是我随机设置的秘钥(aaa)

补充一下token解析的流程:前端登录的时候发送账号密码给后端,后端验证,通过后生成这么一个token传给前端,前端也不管这是啥玩意,每次管后端要东西的时候就傻乎乎的拿着这个token:“看,这是你给我的token,我登陆过了!”后端验证一下发现这个token确实是自己给的,于是就把token里的部分信息(用户id)取出来用于业务处理,把结果返还给前端(我看网上的帖子说时间戳要更新的,可能是要重新生成并返回一个新的token给前端??待验证)

继续记笔记
关于鉴权,负载均衡,集群和注册中心,看下图:
在这里插入图片描述
网上偷的一张图
左边三个用户去访问一个接口,会经过网关,网关会先鉴权(token?)然后把这个请求根据从注册中心拿的地址发送到不同的集群的服务(负载均衡)(热部署?),不同的集群执行代码里的业务逻辑,从注册中心拿地址调用最右面的service,将结果返回给用户。

Spring Cloud Gateway是一个轻量级的网关框架,它可以作为微服务架构中的入口,实现代理和路由功能。在进行身份验证和授权时,可以使用Token进行安全验证。 Token是一种令牌,通常由后端服务颁发给客户端,用于验证客户端的身份和权限。在Spring Cloud Gateway中使用Token可以通过以下方式实现: 1. 首先,客户端在请求头中携带Token,可以使用常见的认证方案,如Bearer Token。在路由的配置文件中,可以通过添加过滤器来获取请求头中的Token,并进行验证。 2. 在网关层,可以编写自定义的GlobalFilter过滤器,在请求到达后执行Token的验证逻辑。可以通过解析Token的信息,比如用户名、角色等,来进行用户身份验证和授权操作。 3. 在网关层,还可以使用Spring Security进行身份验证和授权。Spring Security提供了丰富的特性,如基于角色的访问控制、加密解密等。可以通过配置Spring Security的过滤器链来实现Token验证的功能。 使用Token进行安全验证的好处是,可以将验证逻辑移到网关层,使后端服务更加专注于业务逻辑的实现。Token的使用可以提供更高的灵活性和安全性,保护后端服务免受未经授权的访问。 总之,Spring Cloud Gateway可以通过添加过滤器、编写GlobalFilter过滤器或使用Spring Security来实现Token的安全验证。这样可以保护后端服务,确保只有经过身份验证和授权的客户端能够访问服务。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值