Spring Security #4

이용만·2023년 5월 12일
0
post-thumbnail

Spring Security의 권한부여 처리 흐름

  • AuthorizationFilter : Spring Security Filter Chain에서 URL을 통해 사용자의 엑세스를 제한하는 권한부여 Filter

1) (1)처럼 AuthorizationFilter는 SecurityContextHolder로부터 Authentication을 획득한다.

2) Authentication과 HttpServetRequest를 AuthorizationManager에게 전달한다.

  • AuthorizationManager는 권한 부여 처리를 총괄하는 매니저 역할을 하는 인터페이스

  • RequestMatcherDelegatingAuthorizationManager : AuthorizationManager를 구현하는 구현체

  • RequestMatcherDelegatingAuthorizationManager 가 직접 권한부여하는것이 아니라 RequestMatcher 를 통해 매치되는 AuthorizationManager 구현 클래스에게 위임만 한다.

3) RequestMatcherDelegatingAuthorizationManager 내부에서 매치되는 AuthorizationManager 구현 클래스가 있으면 AuthorizationManager 구현 클래스가 사용자의 권한을 체크한다.

4) 적절한 권한이라면 다음 요청으로 진행되고 그렇지 않으면 (5)과 같이 ExceptionTranslationFilter 가 AccessDeniedException을 처리한다.

profile
성장하는 개발자가 되고자 합니다.

0개의 댓글