ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 2021.10.12 기록장
    TIL 2021. 10. 12. 21:36

    ToDo

    • 스프링 시큐리티
    •  

    Done

    • 스프링 시큐리티

    Weekly goal

    • 책 읽기
    • 영어 레퍼런스 읽기
    • 회고

     

    스프링 시큐리티 

     

    메서드 방식의 인증 처리

    4개의 어노테이션이 존재함

    @PreAuthorize , @PostAuthorize

    ( PrePostAnnotationSecurityMetadataSource 가 담당 )

     

    @Secured, @RolesAllowed

    ( ~~~ MetadataSource가 담당 )

    위의 2개는 SpEL을 지원함

     

    모두 @EnableGlovalMethodSecurity(prePostEnabled = true, securedEnable = true)

    해야 사용 가능 , 기본은 false임

    메서드 보안 관련 class인 GlobalMethodSecurityConfiguration에서 설정을 확인하고 있다.

     

    위의 예제는 user권한과 주어진 Dto의 유저 네임이 현재 로그인한 유저 네임과 일치해야 실행된다.

     

    어노테이션에 붙은 애들은 초기화되면서 ~~ MetadataSource들에 의해 파라미터 부분이 저장된다.

    후에 리스트로 관리되어 AbstractSecurityIntercepter에서 인가 검사할 때 사용된다.

     

    PrePostAnnotationSecurityMetadataSource

    PrePostAnnotationSecurityMetadataSource에서 어노테이션 정보를 뽑는 모습

    'TIL' 카테고리의 다른 글

    2021.10.14 기록장  (0) 2021.10.14
    2021.10.13 기록장  (0) 2021.10.13
    2021.10.10 기록장  (0) 2021.10.08
    2021.10.06 기록장  (0) 2021.10.06
    2021.10.03 기록장  (0) 2021.10.02

    댓글

Designed by Tistory.