系统权限设计思路
權限系統通常包括如下基本元素:用戶、角色、權限、資源、操作。
角色分類:總經理、部長、員工。(在實際中一個用戶可能存在多個角色,這就要考慮到權限累加處理)
權限分類:如”員工考勤權限”、”審核權限”等等。
在給角色分配權限過程中,可以批量分配權限,也可以單一處理,比如網站首頁,這就應該開放給所有角色,而審核考勤就只能給部分角色有開放,是單一處理的。
角色,是 頁面權限 的集合。
用戶,可以同時具有多個 角色,這就意味著用戶可能擁有多個批量權限和單一權限
用戶的權限集 = 用戶的所有 角色 的權限
實質上角色的本質是 權限的集合。
頁面對權限的處理:
當用戶去訪問一個頁面時,我們在過濾器中去判斷用戶有沒有這個權限訪問該頁面,有權限就讓該用戶訪問,沒有權限就拒絕訪問。
說下我做的一個權限系統大概情況:
數據庫表結構:
用戶表user
角色表role
系統模塊表module
用戶角色關聯表userRole
角色模塊關聯表rolemodule
系統權限驗證思路:
用戶登陸時,去獲取他的角色,再用角色去獲取該用戶的權限集,把這個權限集處理在緩存中或者其他處理方式,當用戶每次向后臺發送請求時,我們去緩存中拿到這個權限集與后臺訪問頁面權限比較是否有權限。
轉載于:https://www.cnblogs.com/wangqilong/p/9417500.html
總結
- 上一篇: 龅牙牙齿矫正要多少钱
- 下一篇: leetcode 179. 最大数