Я получаю 403 на каждый запрос с шаблоном / администратором
Мне нужно ограничить / admin только для роли администратора.
Неудачный подход:
- Попробовал использовать
@PreAuthorize(hasRole('ADMIN'))
и @PreAuthorize(hasRole('ROLE_ADMIN'))
на контроллере, но не повезло.
- Попытка удаления
@PreAuthorize
из контроллера и добавления шаблона в следующем классе с помощью hasRole, но безуспешно
Ниже приведен класс WebSecurityConfigurerAdapter
@Configuration
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
public class WebSecurityConfig extends WebSecurityConfigurerAdapter{
@Autowired
AuthenticationEntryPoint authenticationEntryPoint;
@Override
protected void configure(HttpSecurity httpSecurity) throws Exception {
httpSecurity
.exceptionHandling()
.authenticationEntryPoint(authenticationEntryPoint)
.and()
.sessionManagement()
.sessionCreationPolicy(SessionCreationPolicy.STATELESS)
.and()
.authorizeRequests()
.antMatchers(HttpMethod.OPTIONS).permitAll()
.antMatchers(HttpMethod.GET,"/admin/**").hasAnyRole("ADMIN","ADMIN_TENANT")
.anyRequest().authenticated()
.and()
.logout()
.permitAll()
.and()
.csrf()
.disable();
httpSecurity.
addFilterBefore(authenticationTokenFilterBean(), UsernamePasswordAuthenticationFilter.class);
httpSecurity.
headers().cacheControl().disable();
}
Уже пробовал решения, упомянутые в аналогичном вопросе, но не повезло.
Поэтому, пожалуйста, не отмечайте его как дубликат.