後臺許可權管理控制shiro-許可權表設計
阿新 • • 發佈:2019-02-18
資源表:tb_menuLink(含選單項、選單欄、按鈕等)
DROP TABLE IF EXISTS tb_menuLink;
CREATE TABLE tb_menuLink(
menuId INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
menuName VARCHAR(100) NOT NULL COMMENT '欄目名',
parentId INT DEFAULT 0 COMMENT '許可權型別(所屬父級,0本身)',
menuUrl VARCHAR(200) NOT NULL COMMENT '連結地址' ,
menuNodeType INT(11) DEFAULT 0 COMMENT '許可權節點型別(1代表導航(父),2代表一級選單,3代表二級選單)',
menuState INT(11) DEFAULT 0 COMMENT '狀態 0 顯示 1 禁用',
sort INT DEFAULT 0 COMMENT '排序',
updater INT DEFAULT NULL COMMENT '編輯人',
updateTime DATETIME COMMENT '修改時間',
createTime DATETIME COMMENT '建立時間'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='後臺選單欄表';
角色表:tb_role(這裡我沒有建立中間表,所有的許可權通過組合的字串儲存)
DROP TABLE IF EXISTS tb_role;
CREATE TABLE tb_role(
roleId INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
roleName VARCHAR(64) NOT NULL COMMENT '角色名',
flag INT DEFAULT 0 COMMENT '0 正常,1 禁用',
menuLinksId VARCHAR (100) DEFAULT NULL COMMENT '許可權ID',
roleContent text DEFAULT NULL COMMENT '描述',
updater INT DEFAULT NULL COMMENT '編輯人',
updateTime DATETIME COMMENT '修改時間',
createTime DATETIME COMMENT '建立時間'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='後臺角色許可權表';
使用者表:tb_users(關聯角色ID獲取資源許可權)
DROP TABLE IF EXISTS tb_users;
CREATE TABLE `tb_users` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`loginName` varchar(64) DEFAULT NULL COMMENT '使用者名稱',
`password` varchar(64) DEFAULT NULL COMMENT '密碼',
`userName` varchar(64) DEFAULT NULL COMMENT '真實名字',
`userType` int(11) DEFAULT '0' COMMENT '0普通使用者,1系統管理員(超級使用者)',
`userState` int(11) DEFAULT '0' COMMENT '0 存在,1 刪除',
`mobile` varchar(32) DEFAULT NULL COMMENT '手機號碼',
`loginCount` int(11) DEFAULT '0' COMMENT '登入次數',
`updater` INT DEFAULT NULL COMMENT '編輯者',
`lastLoginDate` datetime DEFAULT NULL COMMENT '最近登入時間',
`passUpdateTime` datetime DEFAULT NULL COMMENT '使用者密碼修改時間',
`createTime` datetime DEFAULT NULL COMMENT '建立時間',
`roleId` varchar(100) DEFAULT NULL COMMENT '角色ID',
`pwd` varchar(100) DEFAULT NULL COMMENT '明文'
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='後臺使用者表';