현재 버전

답변 감사합니다.

ExceptionTranslationFilter 필터가 FilterSecurityInterceptor 필터에서만 예외를 잡을 수 있다면 security filter 표준 체인에서 던지는 인증 예외는 무의미 하지 않나요?? 

인증 예외를 던지는 표준 체인으로는 로그인 요청을 처리하는 UsernamePasswordAuthenticationFilter 필터가 있습니다.

이 클래스는 표준적으로  AuthenticationManager class -> AuthenticationProvider class -> authenticate 함수를 호출하여 인증 예외를 반환하게 설계되어있습니다. 물론 ExceptionTranslationFilter 필터보다 앞에 위치하고 있습니다.


제가 궁금한건 ExceptionTranslationFilter 필터가 FilterSecurityInterceptor 필터를 통해서만 던지는 예외를 잡을 수 있다면 다른 표준 필터들에서는 왜 인증 예외가 throw로 붙어 있냐는 겁니다.


필터 자체에 예외가 표준으로 붙어있지는 않지만 필터 내부에서 호출하는 과정에서 인증 예외 exception이 충분히 발생할 수 있는 구조 입니다.


수정 이력

2022-03-07 01:18:48 에 아래 내용에서 변경 됨 #2

답변 감사합니다.

ExceptionTranslationFilter 필터가 FilterSecurityInterceptor 필터에서만 예외를 잡을 수 있다면 security filter 표준 체인에서 던지는 인증 예외는 무의미 하지 않나요?? 

인증 예외를 던지는 표준 체인으로는 로그인 요청을 처리하는 UsernamePasswordAuthenticationFilter 필터가 있습니다.

이 클래스는 표준적으로  AuthenticationManager class -> AuthenticationProvider class -> authenticate 함수를 호출하여 인증 예외를 반환하게 설계되어있습니다. 물론 ExceptionTranslationFilter 필터보다 앞에 위치하고 있습니다.


제가 궁금한건 말씀하셨다시피 ExceptionTranslationFilter 필터가 FilterSecurityInterceptor 필터를 통해서만 던지는 예외를 잡을 수 있다면 다른 표준 필터들에서는 왜 인증 예외가 throw로 붙어 있냐는 겁니다.


필터 자체에 예외가 표준으로 붙어있지는 않지만 필터 내부에서 호출하는 과정에서 인증 예외 exception이 충분히 발생할 수 있는 구조 입니다.

2022-03-07 01:04:44 에 아래 내용에서 변경 됨 #1

답변 감사합니다.

ExceptionTranslationFilter 필터가 FilterSecurityInterceptor 필터에서만 예외를 잡을 수 있다면 security filter 표준 체인에서 던지는 인증 예외는 무의미 하지 않나요?? 

인증 예외를 던지는 표준 체인으로는 로그인 요청을 처리하는 UsernamePasswordAuthenticationFilter 필터가 있습니다.

이 클래스는 표준적으로  AuthenticationManager class -> AuthenticationProvider class -> authenticate 함수를 호출하여 인증 예외를 반환하게 설계되어있습니다. 물론 ExceptionTranslationFilter 필터보다 앞에 위치하고 있습니다.


제가 궁금한건 말씀하셨다시피 ExceptionTranslationFilter 필터가 FilterSecurityInterceptor 필터를 통해서만 던지는 예외를 잡을 수 있다면 다른 표준 필터들에서는 왜 인증 예외가 throw로 붙어 있냐는 겁니다.