• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

롤 하이라키 관련 질문이 있습니다.

22.03.31 19:03 작성 조회수 188

0

안녕하세요 강사님
 
롤 하이라키를 적용 하고 있습니다.
 
API에서는 롤 계층권한이 잘 적용 된 것 으로 확인이 되었는데요.
 
타임리프에서는
 
sec:authorize="hasRole('ROLE_USER')"
 
이렇게 하고 USER보다 상위 권한에게도 동일하게 메뉴가 보이지 않고 있습니다.
 
타임리프에서는 hasanyrole등으로 권한들을 다 열거 해주어야 하는지 궁금합니다.
 
감사합니다.
 
 

답변 1

답변을 작성해보세요.

1

정수원님의 프로필

정수원

지식공유자

22.04.02 20:29

저도 타임리프에서는 롤하이라키를 적용해 보지는 않았습니다.

제가 정확하게 알지 못해서 구글링 해보니 

https://stackoverflow.com/questions/28609608/spring-security-role-hierarchy-not-working-with-thymeleaf-secauthorize

https://github.com/spring-projects/spring-boot/issues/7114

등과 같은 내용이 있습니다.

타임리프에서 사용하는 문법은 스프링에서 지원하는 표현식으로 나타내기 때문에 스프링 시큐리티의 권한과 관련해서 처리를 담당하는 ExpressionHandler 인터페이스를 구현한 클래스들을 사용해서 별도로 설정해 주어야 하는 것 같습니다.

이번강의에서 ExpressionHandler 에 대해서는 다루지 않아서 자세한 답변을 드리지 못함을 양해 바랍니다.