Встречается на собеседованиях • сегодня

Как происходит базовая авторизация в Spring Security

В Spring Security базовая авторизация (Basic Auth) настраивается через HttpSecurity в конфигурационном классе.

Пример конфигурации:

java
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
            .authorizeRequests()
                .anyRequest().authenticated()
            .and()
            .httpBasic();
    }
}

Ключевые моменты:

  1. httpBasic() включает базовую авторизацию
  2. Запросы проверяются через заголовок Authorization: Basic base64(username:password)
  3. По умолчанию используется встроенный UserDetailsService с логином user и рандомным паролем (логируется при старте)

Для кастомных пользователей можно переопределить UserDetailsService или использовать inMemoryAuthentication():

java
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
    auth.inMemoryAuthentication()
        .withUser("admin").password("{noop}password").roles("ADMIN");
}
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы