关于用户信息如何在多个微服务之间传递的问题
来源:12-1 课程总结

LBruce
2019-12-06
如题,我想到的一个解决方案是:
1.在通过网关的认证与授权之后,给前端返回一个经过密钥加密的JWT。
2.前端每次请求都带上这个JWT,然后通过网关转发到每个微服务。
3.每个微服务在启动的时候,会去认证服务器请求公钥,之后过来的用户请求都用这个公钥来验证JWT是否合法。也就是说多个微服务之间传递用户信息,都是通过这个JWT,只要验证JWT合法,就进行后续处理。
4.为了安全性,使用HTTPS传输JWT、JWT有效期设置得短一些、JWT Payload中不存放敏感信息、对于一些比较重要的操作,再次对用户进行认证操作。
不知道老师还知道一些其它方案吗?请老师讲解一下,谢谢老师。
写回答
1回答
-
同学你好:
你说的这种方式当然是可行的。但是用户信息一般不会在微服务之间传递,各个微服务都会去用户中心拿到用户信息,再做操作。跟你这里的描述差不多。
欢迎来 QQ 群随时交流、讨论,也非常感谢同学的支持!
432019-12-09
相似问题