인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

레오나님의 프로필 이미지
레오나

작성한 질문수

스프링 시큐리티

2) 사용자 정의 보안 기능 구현

configure에 대한 질문이 있습니다.

작성

·

219

1

강사님 안녕하세요 강의 감사합니다.

spring security의존성 주입후 

WebSecurityConfigurerAdapter를 상속시켜서 커스터마이징을 하기위해 파일을 만들었을때

HttpSecurity안에 저 빨간색 표시에 있는 것들을 초기화 시키고 새로만든 파일의 오버라이딩한 configure파일로 넘어가는건가요?

답변 1

3

정수원님의 프로필 이미지
정수원
지식공유자

네 

지금 올리신 소스는 강의와 약간 다릅니다.

스프링 시큐리티 버전이 업데이트 되면서 초기화 되는 방식이 약간 변경이 되었습니다.

강의를 보시면 아래와 같은 구조로 초기화가 이루어지고 있습니다. 

1. 강의 시점 버전 초기화 소스

그런데 최신 소스 기준으로 보면 

HttpSecurityConfiguration 클래스가 새롭게 추가되면서 HttpSecurity 클래스를 초기화 하고 있습니다.

2. 버전업데이트 후 초기화 소스

2-1. WebSecurityConfigurerAdapter 를 상속하는 사용자 정의 SecurityConfig 클래스 생성하지 않을 경우 초기화

2-2. WebSecurityConfigurerAdapter 를 상속하는 사용자 정의 SecurityConfig 클래스 생성할 경우 초기화

스프링 시큐리티 최신 버전 기준으로 설명하자면,

1. 사용자 정의 SecurityConfig 클래스를 별도로 생성하지 않는다면, 즉 pom.xml 에 스프링 시큐리티 의존성만 추가했을 경우에는 2-1번과 같이 HttpSecurityConfiguration 에서 초기화가 이루어집니다

2. 사용자 정의 SecurityConfig  설정 클래스를 별도로 생성한다면 2-2번 처럼 WebSecurityConfigurerAdapter 에서 초기화가 이루어지면서 HttpSecurity 클래스를 생성하고 초기화가 진행되고 있습니다.

버전 업에 따른 초기화의 구조가 약간 변경이 되었지만 대부분은 사용자 정의 SecurityConfig 클래스를 별도로 생성해서 사용하기 때문에 2-2 번처럼 초기화가 이루어집니다. 

결론적으로는 레완 님께서 말씀하신 대로 초기화가 이루어진다고 볼 수 있습니다.

레오나님의 프로필 이미지
레오나

작성한 질문수

질문하기