总流程
1)用户访问 http://localhost:8001/api/oauth/toLogin
先过网关,网关相当于门卫。网关看你的uri,/api/oauth/toLogin,直接放行。去登录界面。
2)登录界面,是认证中心的一部分,这里用oauth搭建认证中心。
用户输入用户名、密码,点击登录,激活后端的login方法,生成jti和jwt,分别作为key和value放进Redis。
再把jti放进cookie。
3)用户访问 http://localhost:8001/api/cart/list
再过网关,网关看你的uri,这里是/api/cart/list,不是登录地址。就从cookie里取jti,再通过jti去redis里取jwt。
…………4)取到就自动帮你把jwt装配到header里面,带去访问真正的微服务
……………………5)真正的微服务通过验证你的jwt,鉴别你的权限,没问题就让你访问
…………6)取不到就转到登录界面
图示
第一次访问
第二次访问
最后
关于怎么验证jwt,涉及到加密解密,这里不展开叙述。