細粒度許可權管理

2021-08-06 06:15:26 字數 1927 閱讀 4967

表1 許可權對映表 

表名:tbl_res_map(許可權對映)                                            類別(表) 

欄位名 字段別名 資料型別 主鍵 允許空/顯示 預設值 說明 

pid 許可權編碼 varchar(50) y n/n

service_view 資源 varchar(50) y n/n

explain 說明 varchar(50) y/n

備註: 將系統中的所有資源全部統一編碼 

service_view:資源,包括選單名、按鈕名、頁面名、方法名等等 

pid和service_view合在一起為主鍵,標示多個資源可以編成乙個編碼(比如乙個按鈕的許可權,往往還包括對應的頁面、方法等許多許可權,你可以將這些關聯許可權編為乙個編碼,這樣賦權時要麼都有,要麼都沒有) 

表 2 許可權資源表 

表名:tbl_perm_res (許可權資源)                                            類別(表) 

欄位名 字段別名 資料型別 主鍵 允許空/顯示 預設值 說明 

pid 許可權編碼 varchar(50) y n/n

parent_id 上級許可權編碼 varchar(50)

type 許可權類別 char(1) n/n 1、頂級選單,2、選單和頁面,3、按鈕 

explain 說明 varchar(50) y/n

備註:①、專門配置所有資源的上下級關係,以便於在分配許可權的頁面使用資源樹的形式展示和賦權。 

我們一般從系統左側選單開始,頂級選單為資源樹頂級節點,子選單一次為子資源,頁面、頁面按鈕、請求路徑、方法都為某乙個模組的子資源節點…… 

②、pid和parent_id都為表tbl_res_map中提前對資源編好的編碼 

表3 使用者許可權表 

表名:tbl_auth (使用者許可權)                                            類別(表) 

欄位名 字段別名 資料型別 主鍵 允許空/顯示 預設值 說明 

uid 賬號/角色 varchar(50) y n/n

utype 類別 char y n/n 1、使用者,2、角色 

pid 許可權編號 varchar(50) y n/n

備註:pid**tbl_perm_res中的pid 

表4 角色表 

表名:tbl_role (角色)                                            類別(表) 

欄位名 字段別名 資料型別 主鍵 允許空/顯示 預設值 說明 

role_id 角色編號 varchar(50) y n/n

role_name 角色名稱 varchar(50) n/y

備註 表5 使用者角色對映表 

表名:tbl_user_role (使用者角色對映表)                                            類別(表) 

欄位名 字段別名 資料型別 主鍵 允許空/顯示 預設值 說明 

role_id 角色編號 varchar(50) y n/n

user_id 使用者編號 varchar(50) y n/n

備註 表 6 使用者表 

表名:tbl_user (使用者)                                            類別(表) 

欄位名 字段別名 資料型別 主鍵 允許空/顯示 預設值 說明 

user_id 賬號 varchar(50) y n/y

password 密碼 varchar(50) n/n

username 使用者名稱 varchar(50) n/y

mobile 手機號碼 varchar(24) n/y

備註: 

這是乙個多次應用在金融行業的細粒度許可權管理方案! 

粗細粒度許可權 許可權

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

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

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

細粒度審計

細粒度審計 fga 通過 oracle9i 引入 可以理解為 基於策略的審計 與標準的審計功能相反,fga 可用於指定生成審計記錄必需的條件 fga 策略通過使用 dbms fga 程式包以程式設計方式繫結到物件 表 檢視 類似於用於通過 vpd dbms rls 進行訪問控制的程式包,它允許您建立...