咨詢
交流群
電話

權限設計:RBAC模型

文檔 > 后端知識 2019-04-08 11:51 閱讀

RBAC模型是權限設計中經典的模型。完整名稱是Role-Based Access Control,基于角色的訪問控制。

參考資料:https://blog.csdn.net/yangwenxue_admin/article/details/73936803。

權限Permission,是系統中的某項功能,由一個或多個Operation組成。比如用戶管理是一個權限,由增加用戶 編輯用戶 刪除用戶三個操作組成。

角色Role,是權限Permission的集合。比如某個角色擁有用戶管理 部門管理 文檔管理等權限。

用戶User,可以被賦予一個或多個角色,因此獲得權限。用戶不得直接賦予某項權限,必須通過角色。這簡化了賦權的工作量,也降低了系統實現的復雜度。

這是最基本的權限設計,非常容易理解,也非常容易實現。Shiro就是基于該模型實現的權限框架。Spring Security也是,但相對較復雜。

有時為了更方便的進行賦權,會增加用戶組的概念,對用戶進行分組,可以對用戶組賦予某項角色,這樣用戶的權限就是自身角色和所在用戶組角色的權限之和。但這會增加系統設計的復雜度,一般情況下不用這樣處理,只有在用戶眾多,賦權工作復雜繁重的情況下,才考慮增加這項設計。

柯坪县| 辽阳市| 万盛区| 德江县| 武安市| 肇庆市| 达孜县| 波密县| 舟曲县| 柞水县| 宁陕县| 汉川市| 宽甸| 淮安市| 芷江| 霍城县| 北宁市| 邵武市| 九龙坡区| 都江堰市| 宜兰县| 灵寿县| 井陉县| 雷波县| 铜山县| 嵊州市| 加查县| 金平| 盱眙县| 新野县| 大石桥市| 临洮县| 黑山县| 肥西县| 大洼县| 封丘县| 江永县| 东辽县| 兖州市| 桂平市| 砀山县|