zuul+SpringSession的session不一致问题

情况是这样:

     zuul作为网关,转发用户请求到下层微服务,下层微服务有个模块用了SpringSession+SpringSecurity控制权限
我通过下层微服务的swagger测试,登录之后,浏览器生成了一个cookie,然后去访问其他接口,是通的;

zuul+SpringSession的session不一致问题_第1张图片

 

但是!!问题来了,我如果我的请求经过zuul转发的话,先登录,然后去访问其他接口怎么都是报错Access Denied;

zuul+SpringSession的session不一致问题_第2张图片

这个错误用过SpringSecurity的朋友都知道

然后我用postman测试,也是一样的问题,我怀疑是zuul网关转发请求后对于session的什么设置有问题;

查了资料,zuul有个配置

zuul+SpringSession的session不一致问题_第3张图片

zuul在路由的时候,zuul会改写request中的header信息,这个配置就是对哪些header敏感,会过滤这些header;

因为我的场景是下游服务会鉴权,如果路由的时候不带上cookie,下游服务的SpringSesion就不能鉴权了

所有这里配置为空 ,意思就是全部都不过滤;

如果遇到遇到同样问题的朋友,希望对你有帮助

你可能感兴趣的:(SpringSecurity,SpringSession)