因Spring Web 的Cookie sameSite坑 跨域之坑

因Spring Web 的Cookie sameSite坑 跨域之坑_第1张图片

因Spring Web 的Cookie sameSite坑 跨域之坑_第2张图片

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;
    }

你可能感兴趣的:(Java-Web应用)