Моя конфигурация безопасности весной:
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.cors()
.and()
.authorizeRequests()
.antMatchers("/user/save")
.permitAll()
.and()
.authorizeRequests()
.antMatchers("/user/**")
.hasRole("USER")
.and()
.httpBasic()
.and()
.logout()
.clearAuthentication(true)
.invalidateHttpSession(true)
.deleteCookies("JSESSIONID")
.deleteCookies("XSRF-TOKEN")
.permitAll()
.and()
.csrf().csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse());
}
Я использую Angular 6 во внешнем интерфейсе. Я делаю ПОЧТА на конечной точке /logout. Я вижу, что файлы cookie JSESSIONID и XSRF отправляются по запросу (с помощью инструментов разработчика в Chrome).
Однако на консоли приложения Spring Server Side я получаю следующую трассировку стека:
Invalid CSRF token found for http://localhost:8009/logout
... и запрос выхода из системы не выполняется.
Я не могу понять, почему токен XSRF не обновляется (если это так) или почему токен недействителен. Любая помощь приветствуется.





Не могли бы вы добавить снимок экрана (с запросом / ответом, включая заголовки) вашего инструмента разработки?