방법 1. SecurityConfig 클래스 생성
@EnableWebSecurity
@Configuration
public class SecurityConfig {
@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
http
.authorizeHttpRequests(auth -> auth.anyRequest().authenticated())
.formLogin(Customizer.withDefaults());
return http.build();
}
@Bean
public UserDetailsService userDetailsService() {
UserDetails user = User.withUsername("user")
.password("{noop}asdf")
.roles("USER").build();
return new InMemoryUserDetailsManager(user);
}
}
- securityFilterChain 빈 등록: 들어오는 모든 요청을 인증 처리.
- UserDetailsService: Spring Security에서 제공하는
UserDetailsService를 사용하여 새로운 유저 객체를 생성함.
{noop}은 비밀번호를 암호화하지 않음을 의미.
InMemoryUserDetailsManager를 통해 메모리에 사용자 정보를 저장하여 관리함.
방법 2. application.yml에 설정 추가
spring:
security:
user:
name: user
password: 1111
roles: USER
- YAML 설정을 사용하여 사용자 설정: Spring Boot의
application.yml 파일에서 사용자 이름, 비밀번호, 역할을 설정할 수 있음.