Super Admin
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 ในระบบ Linux การได้รับอนุญาตเป็น root จะเข้าถึงไฟล์และการตั้งค่าทั้งหมด หากเราต้องการให้ sub
มีสิทธิ์เข้าถึงระบบทั้งหมด เราสามารถกำหนดบทบาทให้เป็น Super Admin ซึ่งจะให้สิทธิ์ sub
ในการทำทุกการกระทำ