스프링
Spring security hasRole, hasAuthority 차이점
세객
2019. 8. 21. 20:40
Role 은 그냥 신분증이라고 생각하면 되고
Authority 할 수 있는 기능으로 생각하며 된다.
hasRole("ADMIN") 이라고 작성시 userDetailsService 에서 Authority 를 가져와서 확인할 때
자동으로 ROLE 이라는 접두어를 붙어서 확인한다.
예를 들어서 아래와 같은 값을 들고 있는 USER 가 있을 경우
List<GrantedAuthority> ADMIN_ROLES = AuthorityUtils.createAuthorityList("ROLE_ADMIN");
hasRole("ADMIN") 으로만 표현을 써줘도 접두어로 ROLE 이 붙기 때문에 권한을 줄 수 있다.