权限:在多用户计算机系统的管理中,权限(privilege)是指某个特定的用户具有特定的系统资源使用权力,像是文件夹,特定系统指令的使用或存储量的限制。
名词:用户,角色,权限
首先来张简单的树结构:
.
└── 权限
├── 用户A(admin)
│ ├── 发布管理
│ ├── 会员管理
│ ├── 我的面板
│ │ ├── 错误日志
│ │ ├── 管理日志
│ │ ├── 管理员列表
│ │ └── 系统首页
│ └── 系统设置
├── 用户B
│ └── 系统首页
├── 用户C
│ └── 系统首页
└── 用户D
└── 系统首页
/* 用户表 */
CREATE TABLE IF NOT EXISTS USER(
USER_ID INT(11) NOT NULL AUTO_INCREMENT COMMENT '用户id',
FULLNAME VARCHAR(20) COMMENT '用户全名',
PASSWORD VARCHAR(250) COMMENT '用户密码',
NICKNAME VARCHAR(150) DEFAULT 'i厂房用户' COMMENT '用户呢称',
LOGIN_DATE VARCHAR(14) NOT NULL COMMENT '最后登录时间',
JOINED_DATE VARCHAR(14) NOT NULL COMMENT '加入时间',
PRIMARY KEY (USER_ID)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
/* 权限栏目表 */
CREATE TABLE IF NOT EXISTS PERMISSION_COLUMN (
ID INT(11) NOT NULL AUTO_INCREMENT COMMENT '栏目id自增',
UPPER_ID INT(11) DEFAULT 0 COMMENT '上一级ID',
RANK TINYINT(1) DEFAULT 0 NOT NULL COMMENT '栏目等级',
STATUS VARCHAR(1) DEFAULT '0' NOT NULL COMMENT '栏目状态 0:停用 1:启用',
POS TINYINT(2) NOT NULL COMMENT '栏目位置',
ICON VARCHAR(150) COMMENT '图标存放地跟径',
NAME VARCHAR(20) NOT NULL COMMENT '权限名称',
URL VARCHAR(150) COMMENT '点击后的跳转',
PRIMARY KEY (ID,RANK,UPPER_ID)
)DEFAULT CHARSET=utf8;
/* 用户角色表 */
CREATE TABLE IF NOT EXISTS USER_ROLE (
USER_ID INT(11) NOT NULL COMMENT '管理用户ID',
ROLE_ID INT(11) NOT NULL COMMENT '角色id',
PRIMARY KEY (USER_ID)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
/* 角色表 */
CREATE TABLE IF NOT EXISTS ROLE (
ROLE_ID INT(11) NOT NULL COMMENT '角色ID',
COLUMN_GROUP VARCHAR(150) NOT NULL COMMENT '权限栏目组',
PRIMARY KEY (ROLE_ID)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;