一、許可權控制預計分為:
1、資源:使用者訪問的選單、操作的按鈕、鏈結的url都對應一條資源資料
2、角色:角色包含一組資源,表明擁有該角色的賬號允許訪問這組資源對應的頁面或操作
3、角色組:角色組中包含一組角色,用於自由靈活地生成各種控制策略
4、賬號:匹配乙個角色組,擁有角色組中資源的訪問許可權
(以上可以用shiro配置,達到不同許可權的使用者擁有各自的檢視介面)
5、 具體到每個賬戶對應不同省、市、區等,需要賬號設定所屬地區、學校,查詢時就完成許可權劃分。
二、資源(resources)的資料結構
/** 用於左側選單的許可權控制 **/
public static final string menu = "menu";
/** 用於跳轉頁面鏈結時的許可權控制 **/
public static final string button = "button";
@idprivate string id;
private string name;
// 資源名稱
private string desc;
//資源描述
private string type;
//資源型別:meun、button
private string value;
//資源值:meun(/manage/account/list)、button(account:*)
private boolean enabled = true;
三、角色(role)的資料結構
@id
private string id;
private string rolename;
// 角色名稱
private string roledesc;
// 角色描述
private setresourceids;
// 角色對應的資源集合
private boolean enabled = true;
四、角色組(rolegroup)的資料結構
@id
private string id;
private string rolegroupname;
// 角色組名稱
private string rolegroupdesc;
// 角色組描述
private setroleids;
// 角色組對應的角色集合
private boolean enabled = true;
private string createtime;
private string modifytime;
五、賬號(account)的資料結構
/** 超級管理員 **/
public static final string account_type_superadmin = "super_admin";
/** 教育局管理員 **/
public static final string account_type_eduadmin = "edu_admin";
/** 學校管理員 **/
public static final string account_type_schadmin = "sch_admin";
/** 運營管理員 **/
public static final string account_type_sopadmin = "sop_admin";
@idprivate string id;
private string username;
//登入使用者名稱
private string showname;
//顯示使用者名稱
private string password;
//密碼
private int loginnum = 0;
//登入次數
private string admintype;
//管理員型別
private boolean iswholecountry;
//是否全國
private setprovinceids;//省
private setcityids;//市
private setareaids; //區縣
private setcenterschoolids;//中心校
private setschoolids;//學校
private string modifyuserid;//記錄最後一次修改人(邏輯刪除,修改基本資訊,作用域等有效)
private string modifyusername;//記錄最後一次修改人(邏輯刪除,修改基本資訊,作用域等有效)
private string logintime;
//登入時間
private string createtime;
//建立時間
private string modifytime;
//記錄最後一次修改時間(邏輯刪除,修改基本資訊,作用域等有效)
private boolean enabled = true;//是否可用,邏輯刪除用
private int status = 1;
//禁用啟用狀態:0-禁用;1-啟用;
/**許可權控制**/
private setrolegroupids;
//賬號對應的角色組集合
專案 RBAC模型與許可權設計
一.rbac模型 什麼是rbac rbac 全稱 role based access control 基於角色的許可權訪問控制,作為傳統訪問控制 自主訪問,強制訪問 的有前景的代替受到廣泛的關注。在rbac中,許可權與角色相關聯,使用者通過成為適當角色的成員而得到這些角色的許可權。這就極大地簡化了許...
許可權的設計
rbac role based access control,基於角色的訪問控制 就是使用者通過角色與許可權進行關聯。簡單地說,乙個使用者擁有若干角色,每乙個角色擁有若干許可權。這樣,就構造成 使用者 角色 許可權 的授權模型。在這種模型中,使用者與角色之間,角色與許可權之間,一般者是多對多的關係。...
許可權的設計
rbac role based access control,基於角色的訪問控制 就是使用者通過角色與許可權進行關聯。簡單地說,乙個使用者擁有若干角色,每乙個角色擁有若干許可權。這樣,就構造成 使用者 角色 許可權 的授權模型。在這種模型中,使用者與角色之間,角色與許可權之間,一般者是多對多的關係。...