본문 바로가기

Spring/Spring Security

ExceptionTranslationFilter

ExceptionTranslationFilter는 FilterChainProxy를 구성하는 filter중 하나로, 요청을 처리하는 도중 발생할 수 있는 예외에 대한 라우팅과 위임을 처리한다.

 

FilterSecurityInterceptor와 밀접한 관계가 있는데, 그 이유는 ExceptionTranslationFilter가 try-catch 블록으로 감싼뒤 SecurityInterceptor를 실행하는 구조이고, 이 과정에서 발생하는 에러를 처리하는 필터이기 때문이다.

 

발생하는 예외는 2가지로 흐름은 다음과 같다.

 

1. AuthenticdationException

AuthenticdationException은 인증예외이다.

AuthenticationEntryPoint를 사용해 처리한다. 예외 발생 시 로그인을 하도록 redirect된다.

  + 커스터마이징 가능

 

 

2. AccessDeniedException

AccessDeniedException은 인가예외이다. 

AccessDeniedHandler를 통해 처리한다. 예외 발생시 403 에러 페이지를 보여준다.

  + 커스터마이징 가능

 

 

 

 

 

 

 

 

 

Reference

https://uchupura.tistory.com/22

https://ncucu.me/130

 

 

'Spring > Spring Security' 카테고리의 다른 글

http 에서 https로 전환하기  (0) 2022.01.11
AnonymousAuthenticationFilter  (0) 2021.11.15