SpringSecurity
Spring Security
🔒 Spring Security란?
정의
Spring Security는 Spring 기반 애플리케이션의 인증과 인가를 담당하는 보안 프레임워크다.
🧩 주요 특징
- 인증과 인가 기능을 통합 지원한다.
- 다양한 인증 방식과 연동할 수 있다.
- Role 기반 권한 설정이 가능하다.
- CSRF, CORS 방어 기능을 제공한다.
🛠️ 핵심 구성
- SecurityContextHolder
- SecurityContext
- Authentication
- AuthenticationProvider
- AuthenticationManager
- UserDetails
🧪 기본 사용 예시
implementation 'org.springframework.boot:spring-boot-starter-security'
@Configuration
@EnableWebSecurity
public class SecurityConfig {
@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
return http
.authorizeHttpRequests(auth -> auth
.requestMatchers("/admin/**").hasRole("ADMIN")
.requestMatchers("/user/**").authenticated()
.anyRequest().permitAll()
)
.formLogin(withDefaults())
.build();
}
}
🧭 세션 기반 인증
참고
Spring Security는 세션에 인증 정보를 저장해 다음 요청에서도 인증 상태를 유지할 수 있다.
댓글남기기