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

이한승님의 프로필 이미지
이한승

작성한 질문수

스프링 시큐리티

2) 필터 초기화와 다중 보안 설정

다중 보안 설정

해결된 질문

작성

·

358

5

안녕하세요. 강의 잘 보고 있습니다~

이번 강의 보다가 궁금한게 있는데

실제로도 다중 보안 설정 방식을 자주 사용하는지와

사용한다면 어떤 경우에 쓰여지는지가 궁금합니다.

답변 2

11

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

다중 보안 방식은 인증방식을 다르게 가져가거나 도메인별로 나누어서 보안 환경을 구성할 경우 고려사항이라 보시면 됩니다.

제 같은 경우 사용자 보안과 관리자 보안을 별도로 구성해서 사용한 적은 있습니다.

예를 들자면  /admin/** url 패턴으로 접속하는 모든 요청에 대하여  AdminSecurityConfig 를 구성하고

 /users/** url 패턴으로 접속하는 모든 요청에 대하여  UserSecurityConfig 를 구성하는 식입니다.

물론 하나의 SecurityConfig 로도 구성은 가능합니다만 두개로 분리할 시 확장성 면에서 이점이 있습니다.

인증 방식을 별도로 가져갈 수 있고(한쪽은 Form 방식, 한쪽은 Rest 방식) 거기에 따른 여러가지 필터나 보안 옵션들도

각각 다르게 구성이 가능할 것 입니다.

http.antMatcher("/api/**) 로 접속하는 요청에 대해서는 Rest 방식의 보안 처리를 하고 그 외의 요청은 Form 방식으로 처리하는 식으로 생각해 볼 수 있습니다.

AuthenticatinEntryPoint 같은 경우도 인증에 실패할 경우 ExceptionTranslationFilter 에서 호출해 주는데 

Form 방식은 LoginUrlAuthenticationEntryPoint 를 사용하고 Rest 라면 BasicAuthenticationEntryPoint 혹은 별도의 AuthenticationEntryPoint 를 구현해서 사용할수도 있을 것입니다.

요약하면 하나의 보안 설정으로 가면 관리하기는 쉬운면은 있으나 인증방식을 두가지 동시에 가지고 가기가 어렵고 설정들도 분리하기 힘든데 반해 다중 보안 설정으로 가면 관리하는부분은 상대적으로 비용이 더 들어도 여러 인증 방식들을 조합해서 사용하거나 도메인별로 분리해서 사용할 수 있는 잇점이 있는 것 같습니다.

상황과 필요에 맞게 정책을 잘 세워서 진행하면 될 것 같습니다.

0

이한승님의 프로필 이미지
이한승
질문자

친절하고 자세한 답변 정말 감사드립니다 

이한승님의 프로필 이미지
이한승

작성한 질문수

질문하기