ข้ามไปยังเนื้อหาหลัก

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 ในการทำทุกการกระทำ