728x90
- 보안이 필요한 메서드에 설정한다
- @PreAuthorize, @PostAuthorize
- SpEL 지원
- @PreAuthorize("hasRole('ROLE_USER’) and (#account.username == principal.username)")
- PrePostAnnotationSecurityMetadataSource 가 담당
- @Secured, @RolesAllowed
- SpEL 미지원
- @Secured ("ROLE_USER"), @RolesAllowed("ROLE_USER")
- SecuredAnnotationSecurityMetadataSource, Jsr250MethodSecurityMetadataSource 가 담당
- @EnableGlobalMethodSecurity(prePostEnabled = true, securedEnabled = true)
- 설정 클래스에 반드시 해당 어노테이션이 선언해야 한다.
- 해당 설정을 해야 Bean으로 생성하여 등록하기 때문에 반드시 설정 클래스에 속성을 켜야 한다.


SPEL
- 해당부분을 Advice로 등록하여 후에 해당 메소드로 접근하였을 경우, 해당 Advice가 동작하여 권한 체크를 한다.
728x90
'스프링 시큐리티 > 실전프로젝트 - 인가 프로세스 DB 연동 서비스 계층 구현' 카테고리의 다른 글
| ch06. AOP Method 기반 DB 연동 - MapBasedSecurityMetadataSource (3) (0) | 2022.01.26 |
|---|---|
| ch05. AOP Method 기반 DB 연동 - MapBasedSecurityMetadataSource (2) (0) | 2022.01.26 |
| ch04. AOP Method 기반 DB 연동 - MapBasedSecurityMetadataSource (1) (0) | 2022.01.26 |
| ch02. AOP Method 기반 DB 연동 - 주요 아키텍처 이해 (0) | 2022.01.25 |
| ch01. Method 방식 개요 (0) | 2022.01.25 |