咨詢
交流群
電話

權限設計: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也是,但相對較復雜。

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

黄冈市| 浦江县| 耿马| 英吉沙县| 郯城县| 定西市| 闽侯县| 特克斯县| 高台县| 锡林郭勒盟| 晋宁县| 德阳市| 饶平县| 简阳市| 定西市| 门头沟区| 朝阳区| 洛扎县| 凯里市| 建昌县| 庆阳市| 明星| 桦川县| 芦山县| 普兰县| 达孜县| 石林| 和林格尔县| 泉州市| 吉安县| 阿坝县| 沿河| 清新县| 枝江市| 孟村| 大田县| 东辽县| 威海市| 鹤壁市| 布尔津县| 唐河县|