因Spring Web 的Cookie sameSite坑 跨域之坑

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/boom_man/article/details/84642040

在这里插入图片描述

在这里插入图片描述

SameSite Cookie 应该是一种新的cookie属性值,我看到很多大型网站如百度都没有用到,
他是防止 CSRF 攻击 具体可看 https://www.cnblogs.com/ziyunfei/p/5637945.html

spring web 最新版默认生成为SameSite=Lax,奇怪的是用spring data Session redis 后 cookie新增了 SameSite这个字段,所以不能携带cookie进行跨域post访问,文档上也不表明什么时候开始的,坑的是默认为Lax也不能设置,
遂现在将web版本降级

最后在github上提问 https://github.com/spring-projects/spring-framework/pull/1889

解决办法如rwinch所说

    @Bean
    public CookieSerializer httpSessionIdResolver(){
        DefaultCookieSerializer cookieSerializer = new DefaultCookieSerializer();
        cookieSerializer.setCookieName("token");
        cookieSerializer.setUseHttpOnlyCookie(false);
        cookieSerializer.setSameSite(null);
        return cookieSerializer;
    }
阅读更多

没有更多推荐了,返回首页