У меня есть веб-сервис с несколькими контроллерами.Мне нужно добавить аутентификацию только для одного из них.Остальные должны остаться без аутентификации.Обратите внимание, что мне просто нужно добавить имя пользователя и пароль в заголовке запроса.Нет формы входа.Я использую приложение весенней загрузки.
Код, который я пробовал:
@Configuration
public class ApplicationSecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.inMemoryAuthentication()
.withUser("user").password("{noop}pass").roles("ADMIN");
}
// Secure the endpoints with HTTP Basic authentication
@Override
protected void configure(HttpSecurity http) throws Exception {
http
//HTTP Basic authentication
.httpBasic()
.and()
.authorizeRequests()
.antMatchers(HttpMethod.GET, "/myController").hasRole("ADMIN")
.and()
.csrf().disable()
.formLogin().disable();
}
Однако он не запрашивает пользователя и пароль.Если я удаляю {noop}, он делает, но выдает исключение недопустимого кодировщика пароля