Почему возникает ошибка _csrf null с безопасностью Spring и angular

Я получаю примерно такое сообщение об ошибке:

{timestamp: 1536511109166, status: 403, error: "Forbidden",…}
error
:
"Forbidden"
message
:
"Invalid CSRF Token 'null' was found on the request parameter '_csrf' or header 'X-CSRF-TOKEN'."
path
:
"/vendors/1"
status
:
403
timestamp
:
1536511109166

В проекте безопасности Spring используется прокси-сервер zuul.

zuul:
  routes:
    resource:
      path: /resource/**
      url: http://localhost:9000
      sensitive-headers:

Spring Security имеет следующую конфигурацию, установленную для Spring Security, чтобы можно было использовать репозиторий токенов csrf.

@Override
        protected void configure(HttpSecurity http) throws Exception {
            // @formatter:off
            http
                .httpBasic().and()
                .logout().and()
                .authorizeRequests()
                .antMatchers("/index.html", "/", "/home", "/login", "/vendors", "/table").permitAll()
                    .anyRequest().authenticated()
                    .and()
                .csrf()
                    .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse());
            // @formatter:on
        }

Я не получаю никаких ошибок при запросах на получение, но с этой ошибкой не работают только запросы на публикацию и удаление. Также я использую сервер Spring-session как redis как для прокси, так и для ресурса.

Пример расположения проекта:

https://github.com/nishantlakhara/proxy

после попытки различных методов он работал, когда я добавил http.csrf (). csrfTokenRepository (CookieCsrfTokenRepository.wi‌ thHttpOnlyFalse ()); к серверу ресурсов.

Nishant Lakhara 09.09.2018 19:46
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
3
1
382
0

Другие вопросы по теме