注:
所有shiro使用方法都是圍繞springrain專案進行的. 具體的springrain專案demo可以在之前的部落格中找到.
經典許可權五張表指的是:
①使用者表
②使用者-角色表
③角色表
④角色許可權表
⑤許可權表
er圖:
t_org是部門表,考慮到員工兼職,所以有t_user_org 中間表.
t_menu是選單表,字段 type 是標示是選單資源還是普通資源 選單資源的意義就是導航選單,會顯示到左側導航,普通資源就是選單內的按鈕或者提交路徑,這個時候 pid的意義就比較重要了,pid就是上級選單的id,對於頁面普通資源來說,就是相應的導航選單的url,這樣在管理介面能夠樹形顯示出來.
使用者正常登陸後,根據使用者的角色查詢角色擁有的選單許可權,通過樹形選單顯示導航,示例效果圖如下:
每個選單下一般擁有增刪改查匯入匯出等普通資源,這些也是有許可權控制的,後台分配許可權示例如下圖:
圖中 部落格管理 是乙個導航選單,其中包含刪除部落格等動作的普通資源url. 通過 t_menu表中 type 字段進行標示選單資源或者普通資源,pid欄位標示這些普通資源屬於 部落格管理 這個選單下.
刪除,批量刪除等其實就是前台操作的按鈕,通過shiro的標籤,可以控制按鈕是否顯示,shiro官方提供了jstl的標籤庫,springrain是使用了freemarker標籤.
以部落格管理為例**截圖如下:
就此 就能靈活分配和管理每個操作的許可權.
對於通用的url攔截許可權來說,這幾張表足夠用了.
出自weicms.net。
shiro重新整理許可權
近期做的那個專案購買之後需要重新整理許可權,這個之前沒做過,通過檢視與找到了動態重新整理許可權的方式,加入我的專案如下進行許可權修改 realmsecuritymanager rsm realmsecuritymanager securityutils.getsecuritymanager acco...
shiro許可權註解
shiro許可權註解 可以用在controller層對應的方法上 service層對應的方法上 1 requiresauthentication 表示當前subject已經通過login進行了身份驗證 即subject.isauthenticated 返回true。2 requiresuser 表示...
Shiro許可權管理
shiro許可權管理 一.許可權管理的四張核心的表關係 使用者表使用者 角色 關係表 角色表角色 許可權 關係表 許可權表角色 選單 關係表 選單表二.許可權的控制項 粗粒度配置檔案配置 細粒度通過註解實現 三.了解認證和授權的流程 前端發起登入請求 訪問shiro的subject subject....