Это открытая проблема с Spring Session (https://github.com/spring-projects/spring-security/issues/7537)
. Как я проверял в Spring-Boot (2.1.7.RELEASE
), по умолчанию он использует DefaultCookieSerializer
, который содержит свойство sameSite
, по умолчаниюLax
.
Вы можете изменить это при загрузке приложения, используя следующий код.
Примечание: это хак до тех пор, пока в следующем весеннем выпуске не появится реальное исправление (конфигурация).
@Component
@AllArgsConstructor
public class SameSiteInjector {
private final ApplicationContext applicationContext;
@EventListener
public void onApplicationEvent(ContextRefreshedEvent event) {
DefaultCookieSerializer cookieSerializer = applicationContext.getBean(DefaultCookieSerializer.class);
log.info("Received DefaultCookieSerializer, Overriding SameSite Strict");
cookieSerializer.setSameSite("strict");
}
}