shiro細粒度許可權控制以及開發中碰到的bug

2021-08-10 16:56:30 字數 452 閱讀 1559

spring aop 預設動態**方式為jdk

在進行shiro細粒度許可權控制(即控制方法)時,要將動態**方式改為cglib的

因為cglib產生的動態**物件與原物件是繼承關係,這樣寫在原物件上的註解在動態**物件上才會有效

而預設的jdk動態**產生的**物件與原物件實現同乙個介面,類似於兄弟關係,所以註解會失效

開發中碰到的bug

實際開發中細粒度許可權控制的註解是加在action的方法上的,但是因為此專案中自定義的

baseaction

類中獲得的是父類的泛型,而採用

cglib

動態**產生的**物件,相當於孫子類,這樣獲取到的泛型就錯了,可以加個判斷,或者將註解寫在

service

粗粒度與細粒度許可權控制

粗粒度許可權管理,對資源型別的許可權管理。資源型別比如 選單 url連線 使用者新增頁面 使用者資訊 類方法 頁面中按鈕。粗粒度許可權管理比如 超級管理員可以訪問戶新增頁面 使用者資訊等全部頁面。部門管理員可以訪問使用者資訊頁面包括 頁面中所有按鈕。細粒度許可權管理,對資源例項的許可權管理。資源例項...

細粒度許可權管理

表1 許可權對映表 表名 tbl res map 許可權對映 類別 表 欄位名 字段別名 資料型別 主鍵 允許空 顯示 預設值 說明 pid 許可權編碼 varchar 50 y n n service view 資源 varchar 50 y n n explain 說明 varchar 50 y...

粗細粒度許可權 許可權

粗粒度許可權管理,對資源型別的許可權管理。資源型別比如 選單 url連線 使用者新增頁面 使用者資訊 類方法 頁面中按鈕。粗粒度許可權管理比如 超級管理員可以訪問戶新增頁面 使用者資訊等全部頁面。部門管理員可以訪問使用者資訊頁面包括 頁面中所有按鈕。細粒度許可權管理,對資源例項的許可權管理。資源例項...