Я пытаюсь получить приложение Spring, чтобы разрешить некоторые запросы общедоступным (без входа в систему) и некоторые запросы частным (при входе в систему).
На данный момент я бы хотел получить общедоступныечасть для правильной работы.
Я пробовал большинство примеров конфигураций, перечисленных в документации по Spring Security, включая всевозможные комбинации anonymous () и allowAll ().Все заканчивают тем, что перенаправили на страницу входа.
protected void configure(HttpSecurity http) throws Exception{
http.authorizeRequests()
.antMatchers("/resources/**", "/signup", "/about","/api/home").permitAll()
.antMatchers("/admin/**").hasRole("ADMIN")
.antMatchers("/db/**").access("hasRole('ADMIN') and hasRole('DBA')")
.anyRequest().authenticated()
.and()
// ...
.formLogin();
}
Ожидаемый результат: элементы в allowAll () доступны без входа в систему
Фактический результат:
перенаправить на страницу входа.Это отображается в журнале: 2019-06-06 17: 29: 43.593 INFO 56330 --- [main] ossweb.DefaultSecurityFilterChain: создание цепочки фильтров: любой запрос, [org.sprin ...
Это наводит меня на мысль, что он даже не читает эту конфигурацию.Есть ли способ исправить это?
Спасибо!
ОБНОВЛЕНИЕ: Я попытался добавить игнорирование веб-безопасности, и он, кажется, не работает до сих пор.По-видимому, он по-прежнему печатает ошибку «defaultsecuritychain», поэтому я чувствую, что это может быть как-то связано с этим.
ОБНОВЛЕНИЕ 2: Добавлен файл application.properties в каталоге src / main / resources с этой строкой logging.level.org.springframework.security = DEBUG, чтобы протоколировать отладочные сообщения.
pastebin.com / 2u9k7eHD