https://cornswrold.tistory.com/291

https://bcho.tistory.com/955

API 인가 방식

대표적으로 2가지 방식이 존재한다.

RBAC(Role Based Access Control)

사용자의 역할을 기반으로 하는 RBAC 방식이 있다.

정해진 Role에 권한을 연결하고, 이 Role을 가지고 있는 사용자에게 해당 권한을 부여하는 것이다.

같은 권한을 만든 후, Terry에게 마스터 관리자라는 Role을 부여하면 Terry는 마스터관리자가 갖는 권한을 모두 갖게된다.

이렇게 권한 부여의 대상이 되는 사용자나 그룹을 Object, 각 개별 권한을 Permission, 사용자의 역할을 Role이라고 정의한다.

RABC는 Role에 권한을 맵핑한 다음 Object에 Role을 부여하는 방식이다. 많은 권한 인가는 사용자 역할을 기반으로 하기에 사용하기가 편하다.

Untitled

ACL(Access Control List)

RABC방식은 권한이라는 중간 매개체를 통해서 사용자에게 부여하는데 반해, ACL 방식은 사용자에게 직접 권한을 부여하는 방식이다.

사용자 Terry에 직업 “게시판 관리, 메뉴 관리, 사용자 관리, 게시물 관리, 회원가입 승인" 권한을 부여하는 방식이 ACL 방식이다.

Untitled