Spring Boot/Security

Spring Boot - 계층 권한 ( Role Hierarchy )

최-코드 2024. 4. 13. 15:07

SecurityConfig.java에

@Bean
public RoleHierarchy roleHierarchy() {
    RoleHierarchyImpl roleHierarchy = new RoleHierarchyImpl();
    roleHierarchy.setHierarchy("ROLE_C > ROLE_B\n"
    + "ROLE_B > ROLE_A\n");
    return roleHierarchy;
}

와 같이 설정해주고 경로에다가 role을 지정해줄 때 A,B,C이렇게 다 써줄 필요없이 써줄 role에 대해 가장 낮은 role을 써주면 된다. 만약 B, C role만 가능하면 hasAnyRole("B")같이 해주면 된다.