RBAC 許可權管理----之建表
阿新 • • 發佈:2018-12-24
建表:管理員表,許可權表,角色表, 並模擬資料
-- 管理員 3-1
CREATE TABLE admin_manager (
manager_id smallint unsigned NOT NULL AUTO_INCREMENT COMMENT '管理員id',
manager_name varchar(32) NOT NULL DEFAULT '' COMMENT '管理員姓名',
manager_pwd varchar(32) NOT NULL DEFAULT '' COMMENT '管理員密碼',
manager_salt char(32) NOT NULL DEFAULT '' COMMENT '加鹽',
manager_role_id tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '角色id',
PRIMARY KEY(manager_id),
UNIQUE KEY(manager_name)
) ENGINE=innoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 COMMENT '後臺-管理員';
-- 模擬插入資料
insert into admin_manager(manager_name,manager_pwd,manager_salt,manager_role_id) values
('admin', '123456','123456',1),
('tom', '123456','123456',2),
('jack', '123456','123456',3);
-- 許可權表 3-2
CREATE TABLE admin_auth (
auth_id smallint unsigned NOT NULL AUTO_INCREMENT COMMENT '許可權id',
auth_name varchar(12) NOT NULL DEFAULT '' COMMENT '許可權名稱',
auth_pid smallint unsigned NOT NULL DEFAULT '0' COMMENT '父id',
auth_c varchar(24) NOT NULL DEFAULT '' COMMENT '控制器',
auth_a varchar(24) NOT NULL DEFAULT '' COMMENT '操作方法',
auth_path varchar(12) NOT NULL DEFAULT '' COMMENT '全路徑:c-a',
auth_level intyint unsigned NOT NULL DEFAULT 0 COMMENT '級別,基本:0, 頂級:1, 次頂級:2, 次次頂級:3',
PRIMARY KEY(auth_id)
) ENGINE=innoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 COMMENT '後臺-許可權表';
-- 模擬插入資料
insert into admin_auth(auth_id,auth_name,auth_pid,auth_c,auth_a,auth_path,auth_level) values
(1,'資訊管理','0','','','1','0'),
(2,'資訊列表','1','article','list','1-2','1'),
(3,'資訊新增','1','article','add','1-3','1'),
(10,'商品管理','0','','','10','0'),
(11,'商品列表','10','goods','list','10-11','1'),
(12,'商品新增','10','goods','add','10-12','1'),
(13,'商品分類','10','goods','category','10-13','1'),
(20,'會員管理','0','','','20','0'),
(21,'會員列表','20','user','list','20-21','1'),
(22,'會員新增','20','user','add','20-22','1'),
(30,'管理員管理','0','','','30','0'),
(31,'管理員列表','30','manager','list','30-31','1'),
(32,'許可權列表','30','auth','list','30-32','1'),
(33,'角色列表','30','role','list','30-33','1'),
(40,'評論管理','0','','','40','0'),
(41,'意見反饋','40','comment','feedback','40-41','1'),
(50,'系統管理','0','','','50','0'),
(51,'遮蔽詞','50','system','shielding','50-51','1'),
(52,'系統日誌','50','system','log','50-52','1');
-- 角色表 3-3
CREATE TABLE admin_role (
role_id smallint unsigned NOT NULL AUTO_INCREMENT COMMENT '角色id',
role_name varchar(24) NOT NULL DEFAULT '' COMMENT '角色名稱',
role_desc varchar(32) NOT NULL DEFAULT '' COMMENT '角色描述',
role_auth_ids varchar(128) NOT NULL DEFAULT '' COMMENT '許可權ids',
role_auth_ac text COMMENT '控制器-方法',
PRIMARY KEY(role_id),
UNIQUE KEY(role_name)
) ENGINE=innoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 COMMENT '後臺-角色表';
-- 模擬插入資料
insert into admin_role values
(1,'超級管理員','超級管理員','0',''), -- 設定0,為方便以後操作
(2,'專案經理','專案經理','1,2,3,20,21,22','article-list,article-add,user-list,user-add'),
(3,'前端工程師','前端工程師','',''),
(4,'編輯','編輯','1,2,3','article-list,article-add'),
(5,'美工','美工','',''),
(6,'客服','客服','','');