1. 建立基本表
建立user、role和module三張表,user中每一行對應乙個使用者資訊,role每一行儲存乙個角色資訊,包括角色id及對應的name,module中的每一行儲存乙個模組資訊,包括模組id及對應的name。
建立三張表的sql語句(mysql環境)如下:
1)建立user表,表結構如下:
2)建立role表,表結構如下:
3)建立module表,表結構如下:
create table `of_user` (
`user_id` varchar(100) ',
`username` varchar(255),
`password` varchar(255),
`name` varchar(255) ,
`role_id` varchar(100) ,
`number` varchar(100),
primary key (`user_id`)
) engine=innodb default charset=utf8 ;
create table `of_role` (
`role_id` varchar(50) ,
`role_name` varchar(100),
primary key (`role_id`)
) engine=innodb default charset=utf8;
create table `of_menu` (
`menu_id` int(11) not null,
`menu_name` varchar(254) ,
`menu_url` varchar(254) ,
`parent_id` varchar(20) ,
`menu_order` varchar(80),
`menu_icon` varchar(30),
primary key (`menu_id`)
) engine=innodb default charset=utf8;
create table `of_user_group` (
`id` varchar(50) ,
`user_id` varchar(50) ,
`group_id` varchar(50) ,
primary key (`id`)
) engine=innodb default charset=utf8;2. 插入初始資料
1)定義模組,假設有以下模組a.查詢報表 b.賬號管理 c.資訊發布 d.註冊使用者列表 e.招聘資訊列表幾個模組,將各模組插入module表中。
插入後module內容如下:
2)定義角色,初始定義以下角色a.超級管理員 b.管理員 c.資訊發布者 d.求職者等角色,插入後role內容如下:
3)定義使用者,初始使用者如下,liubei,zhugeliang,zhangfei,lvbu
插入後user內容如下
3. 建立關聯表
1)建立user和role的關聯表user_role,乙個user對應乙個或者多個role,乙個role可以對應多個user,設liubei的角色為administrator,zhugeliang為admin和distributor,zhangfei為distributor,lvbu為jobseeker。使用者zhugeliang和role之間是一對多關係,角色distributor和user之間是一對多關係。
建立後的user_role表結構如下:
內容如下,儲存了使用者和角色之間的對映關係:
2)建立role和module之間的關聯對映表role_module,administrator可以檢視journal_sheet模組,admin可以檢視除journal_sheet的所有模組:info_distribute,account_manage,user_list,job_list,distributor可以檢視info_distribute模組,jobseeker可以檢視job_list模組。
建立後的role_module表結構如下:
內容如下,儲存了role和module之間的對映關係
create table `of_user_role` (
`user_id` int(50),
`role_id` int(50) ,
primary key (`user_id`)
) engine=innodb default charset=urf-8;
create table `of_role_menu` (
`role_id` int(50) ,
`menu_id` int(50)
) engine=innodb default charset=utf8;至此,通過資料庫完成了使用者許可權的設計。
RBAC使用者許可權管理資料庫設計
rbac role based access control,基於角色的訪問控制 就是使用者通過角色與許可權進行關聯。簡單地說,乙個使用者擁有若干角色,每乙個角色擁有若干許可權。這樣,就構造成 使用者 角色 許可權 的授權模型。在這種模型中,使用者與角色之間,角色與許可權之間,一般者是多對多的關係。...
RBAC使用者許可權管理資料庫設計
rbac role based access control,基於角色的訪問控制 就是使用者通過角色與許可權進行關聯。簡單地說,乙個使用者擁有若干角色,每乙個角色擁有若干許可權。這樣,就構造成 使用者 角色 許可權 的授權模型。在這種模型中,使用者與角色之間,角色與許可權之間,一般者是多對多的關係。...
RBAC使用者許可權管理資料庫設計
rbac role based access control,基於角色的訪問控制 就是使用者通過角色與許可權進行關聯。簡單地說,乙個使用者擁有若干角色,每乙個角色擁有若干許可權。這樣,就構造成 使用者 角色 許可權 的授權模型。在這種模型中,使用者與角色之間,角色與許可權之間,一般者是多對多的關係。...