스프링 시큐리티에서 Authority 와 Role 의 차이
- 스프링 시큐리티에서 Role 과 Authority 는 얼핏 보기에 같아 보이지만 서로 다른 개념이다.
Authority (권한)
- '권한' 이라고 해석된다.
- 세분화된 접근 권한을 이야기한다.
- ex. 쓰기 권한, 읽기 권한, 삭제 권한 등이 있다.
- 역할(Role) 이나 기준에 따라 부여된다.
- 표현: 문자열로 하며 특정 접두사나 형식이 없는 편이다.
- 유연성: 역할 (Role) 만으로는 충분한 제어가 어려운 복잡한 시스템에서 유용하다.
Role (역할)
- 권한 보다 높은 수준에 있는 권한 그룹이다.
- 책임과 권한의 집합을 나타낸다.
- ex. 사용자, 관리자 같은 역할이 있다.
- 여러 권한을 하나의 레이블로 그룹화하는데 사용된다.
- 일련의 권한을 한번에 할당할 때 편리하다.
- 표현: 보통
ROLE_
이 붙은 접두사 문자열로 표현하나, 일반 문자열로 표현해도 상관은 없다. - 단순성: Authority 는 유연함을 목적으로 사용한다면 Role 은 단순함을 목적으로 사용한다.
정리
- Authority 는 세분화된 권한을 줄 때 사용된다.
- Role 은 그룹화된 권한을 줄 때 사용된다.
반응형
'보안' 카테고리의 다른 글
Authentication 앞에 Basic 혹은 Bearer 를 붙이는 이유 (인증 방식) (1) | 2024.01.13 |
---|---|
리프레시 토큰 (refresh token) 을 사용하는 이유를 알아보자 (0) | 2022.10.13 |
Method Security of 스프링 시큐리티 (0) | 2022.05.07 |
CSRF 공격 정리 (feat. 스프링 시큐리티) (0) | 2022.05.03 |
JWT(Json Web Token) 이란 무엇이며 왜 사용하는가? (0) | 2022.05.03 |