11-3 JWT颁发流程讲解

在user里面,我们已经做了token的颁发

生成token里面加了两个东西一个userId一个randomKey

这里还加了创建时间和过期时间

jwt的数据签名,假设用的是AES算法,


算法需要元数据+盐

把randomkey返给前端,前端要拿我要传数据的做一次加密,也就是我们常说的签名,把token返给服务端,签名后的数据给服务端。
服务端解析出randomkey对数据做验签,




下面我们要做的就是把这些数据解析出来,然后去做后续的事情。
一般我们是在zuul里面进行。那么我们就要写一个filter。这里借鉴一下我们之前写的Myfilter

复制一下改个名字叫做JWTFilter

验证签名也是在所有的业务之前,我们这里配置为0 也是没有问题的

接着就是具体的业务逻辑。是否需要验签各个业务系统不一样,我们这次为了降低复杂度,没有对前端数据做数据签名,所以这里我们自然而然也不需要验签。目前来讲randonkey没有特别的用处,在这里就是预留放置在这里。前端可以随时用这个randomkey做签名,后算随时可以开启验签。


用户id可能会被篡改,所以解析出来的userid不一定是一个真实的userid,所以正常来讲,我们应该要判断userid是否有效。


 

结束



 

原文地址:https://www.cnblogs.com/wangjunwei/p/12879485.html