一些標准的常見的 Access Control Policy:
基於角色訪問控制 Role-Based Access Control(RBAC)
- 定義:根據角色確定訪問權限,用戶可以綁定不同角色。
- 優點:管理較為靈活,目前的主流模型。
- 例子:管理員角色、編輯角色、讀者角色擁有不同的權限,新增加一個用戶只需要設定相應角色,不需要依次設置對每個操作的權限。
自主訪問控制 Discretionary Access Control(DAC)
- 定義:由資源的所有者、某些組的成員確定訪問權限。
- 優點:可以基於數據/資源自主控制權限。
- 缺點:控制較為分散,不易管理。
- 例子:文章的發布者指定哪些其它用戶可以對這篇文章進行哪些操作。
強制訪問控制 Mandatory Access Control(MAC)
- 定義:給信息添加敏感程度標簽,與用戶的敏感程度標簽進行對比確定能否訪問。而標簽是由管理員設定,
- 優點:適用於安全要求較高如軍事相關的系統。
- 缺點:不夠靈活。
- 例子:A 資源擁有敏感標簽B,C用戶擁有敏感標簽D,如果D不小於B,則B可以訪問A。
基於屬性訪問控制 Attribute Based Access Control(ABAC)/Policy-Based Access Control(PBAC)/Claims-Based Access Control(CBAC)
- 定義:根據用戶屬性、資源屬性動態計算訪問權限。
- 優點:集中化管理、支持不同顆粒度的權限控制。
- 缺點:不能直觀看出用戶和資源的訪問關系,需要實時計算,較多規則會有性能問題。
- 例子:滿足A條件的用戶可以對滿足B條件的資源進行C操作。