Super Admin
슈퍼 관리자는 전체 시스템의 관리자입니다. 이는 RBAC, ABAC, 도메인이 있는 RBAC과 같은 모델에서 사용될 수 있습니다. 자세한 예는 다음과 같습니다:
[request_definition]
r = sub, obj, act
[policy_definition]
p = sub, obj, act
[policy_effect]
e = some(where (p.eft == allow))
[matchers]
m = r.sub == p.sub && r.obj == p.obj && r.act == p.act || r.sub == "root"
이 예는 정의된 request_definition
, policy_definition
, policy_effect
, 그리고 matchers
를 가지고, Casbin이 요청이 정책과 일치하는지 여부를 결정하는 것을 보여줍니다. 중요한 측면 중 하나는 sub
이 root인지 확인하는 것입니다. 판단이 올바르다면, 권한이 부여되고 사용자는 모든 행동을 수행할 권한이 있습니다.
리눅스 시스템의 root 사용자와 유사하게, root로 인증되면 모든 파일과 설정에 대한 접근 권한이 부여됩니다. 만약 우리가 sub
에게 전체 시스템에 대한 완전한 접근 권한을 원한다면, 우리는 그에게 슈퍼 관리자의 역할을 부여하여 sub
에게 모든 행동을 수행할 권한을 부여할 수 있습니다.