개발 관련 지식/Spring Framework Basic
Security - Authorization 인가 개념
권태일1147
2022. 4. 3. 18:37
스프링 시큐리티가 지원하는 권한 계층
- 웹 계층
- URL 요청에 따른 메뉴 혹은 화면 단위의 레벨 보안
- url에 접근 가능한 권한과 사용자의 권한을 비교해서 인가 처리
- 서비스 계층
- 화면 단위가 아닌 메소드 같은 기능 단위의 레벨 보안
- 도메인 계층
- 객체 단위의 레벨 보안
인가 프로세스
- 사용자 요청
- FilterSecurityInterceptor가 요청을 받아서 인증 여부를 체크한다
- SecurityMetadataSource 클래스가 자원에 접근하기 위해 필요한 권한 정보를 조회한다.
- 접근에 필요한 권한 정보가 따로 없으면 자원에 접근 허용한다.
- 권한 정보를 AccessDecisionManager에서 내부적으로 AccessDecisionVoter가 승인/거부 결과를 AccessDecisionManager에게 반환한다.
- 접근이 승인 되면 자원 접근이 허용된다.