$ http запрос выдачи 403 после использования Spring Security? - PullRequest
0 голосов
/ 05 июля 2018

Ниже приведен мой класс SecurityConfiguration, который я использую.

@SpringBootApplication
@RestController
public class WebMvcConfig {
@Configuration
protected static class SecurityConfiguration extends 
WebSecurityConfigurerAdapter {

  @Override
  protected void configure(HttpSecurity http) throws Exception {


  http.authorizeRequests()
  .antMatchers("/login").permitAll()
  .antMatchers("/**").authenticated()
  .anyRequest().authenticated()
  .and()
  .formLogin().permitAll();
  }
}

После запуска, как только я нажимаю на свой URL (http://localhost:8080/TestApp/),), я перехожу на страницу входа по умолчанию, и когда я ввожу идентификатор пользователя по умолчанию (user) и пароль (напечатанные на консоли), меня на мою страницу index.html, отображаемую по URL "/" через мою маршрутизацию AngularJS. Я могу перемещаться по пользовательскому интерфейсу, но как только я отправляю любой запрос $ http (я пытаюсь с запросом POST), он дает мне 403 на консоли браузера с моим URL-адресом запроса $ http.

Может кто-нибудь помочь?

1 Ответ

0 голосов
/ 06 июля 2018

Ошибка 403 означает, что вам запрещен доступ ко всем ресурсам.

Если вы проверите подробности ошибки, скорее всего, у вас будет сообщение, такое как Expected CSRF token not found.

Начиная с версии v4, spring security включает по умолчанию защиту csrf. Это хорошая практика, поскольку csrf атаки вынуждают конечного пользователя выполнять нежелательные действия в веб-приложении, в котором они в настоящий момент проходят проверку подлинности.

Так что в среде разработчиков добавление http.csrf().disable(); решит вашу проблему. Но вам следует подумать о добавлении токена csrf, когда вы хотите перейти в prov env.

...