Supported Models
- ACL (Access Control List)
- ACL ที่มี superuser
- ACL ที่ไม่มีผู้ใช้งาน: นี่เป็นประโยชน์โดยเฉพาะสำหรับระบบที่ไม่มีการตรวจสอบสิทธิ์หรือการเข้าสู่ระบบของผู้ใช้
- ACL ที่ไม่มีทรัพยากร: ในบางสถานการณ์ เป้าหมายเป็นประเภทของทรัพยากรแทนที่จะเป็นทรัพยากรเฉพาะ สิทธิ์เช่น "write-article" และ "read-log" สามารถใช้ได้ สิ่งนี้ไม่ควบคุมการเข้าถึงบทความหรือบันทึกเฉพาะ
- RBAC (Role-Based Access Control)
- RBAC ที่มีบทบาทของทรัพยากร: ทั้งผู้ใช้และทรัพยากรสามารถมีบทบาท (หรือกลุ่ม) ในเวลาเดียวกัน
- RBAC ที่มีโดเมน/ผู้เช่า: ผู้ใช้สามารถมีชุดบทบาทที่แตกต่างกันสำหรับโดเมน/ผู้เช่าที่แตกต่างกัน
- ABAC (Attribute-Based Access Control): สามารถใช้ Syntax sugar เช่น "resource.Owner" เพื่อรับคุณลักษณะของทรัพยากร
- RESTful: รองรับเส้นทางเช่น "/res/*", "/res/:id", และวิธีการ HTTP เช่น "GET", "POST", "PUT", "DELETE"
- Deny-override: รองรับการอนุญาตทั้งอนุญาตและปฏิเสธ โดยที่การปฏิเสธจะมีความสำคัญกว่าการอนุญาต
- Priority: กฎนโยบายสามารถจัดลำดับความสำคัญได้ เช่นเดียวกับกฎของไฟร์วอลล์
ตัวอย่าง
Model | ไฟล์ Model | ไฟล์ Policy |
---|---|---|
ACL | basic_model.conf | basic_policy.csv |
ACL ที่มี superuser | basic_with_root_model.conf | basic_policy.csv |
ACL ที่ไม่มีผู้ใช้งาน | basic_without_users_model.conf | basic_without_users_policy.csv |
ACL ที่ไม่มีทรัพยากร | basic_without_resources_model.conf | basic_without_resources_policy.csv |
RBAC | rbac_model.conf | rbac_policy.csv |
RBAC ที่มีบทบาทของทรัพยากร | rbac_with_resource_roles_model.conf | rbac_with_resource_roles_policy.csv |
RBAC ที่มีโดเมน/ผู้เช่า | rbac_with_domains_model.conf | rbac_with_domains_policy.csv |
ABAC | abac_model.conf | N/A |
RESTful | keymatch_model.conf | keymatch_policy.csv |
Deny-override | rbac_with_not_deny_model.conf | rbac_with_deny_policy.csv |
Allow-and-deny | rbac_with_deny_model.conf | rbac_with_deny_policy.csv |
ลำดับความสำคัญ | priority_model.conf | priority_policy.csv |
ลำดับความสำคัญที่ชัดเจน | priority_model_explicit | priority_policy_explicit.csv |
ลำดับความสำคัญของผู้ใช้ | subject_priority_model.conf | subject_priority_policyl.csv |