spring/security
1. 스프링 시큐리티 초기화를 따라가보자
tokkaiiii
2025. 1. 10. 23:07
1. 목적
공부
2. 내용
스프링부트 프로젝트를 web 과 security 의존성을 주입하여 생성한다.
실행해보면 자동으로 보안이 걸린다
그리고 유저와 패스워드가 메모리로 생성된다
유저 생성은 SecurityProperties 클래스를 참조하면 된다
public static class User {
private String name = "user";
private String password = UUID.randomUUID().toString();
private List<String> roles = new ArrayList();
private boolean passwordGenerated = true;
}
찾아보면 간단하게 생성한다
이후 SecurityBuilder 와 SecurityConfiguration 을 통해 초기화작업이 이루어진다
HttpSecurityConfiguration 클래스에서 13개 설정클래스 생성해서 buil 메소드 실행한뒤 필터를 만든다
최종적으로 필터들을 관리하는 빈인 SecurityFilterChain이 생성한다
그리고 WebSecurityConfiguration 을 실행해서 만들어진 filterChain 을 FilterChainProxy 에 넣어서 사용하게 된다
FilterChainProxy filterChainProxy = new FilterChainProxy(securityFilterChains);