权限设计数据库结构表

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

权限设计数据库结构表

核心提示:--权限许可create table res_permission ( roleid INTEGER , resourceidvarchar2(30), operationid integer , primary key (roleid,resourceid,operationid) ) --角色定义create table res_role ( roleid INTEGER , rolenamevarchar2(30), roledescvarchar

--权限许可

create table res_permission

(

roleid INTEGER,

resourceid varchar2(30),

operationid integer,

primary key(roleid,resourceid,operationid)

)

--角色定义

create table res_role

(

roleid INTEGER,

rolename varchar2(30),

roledesc varchar2(100),

primary key(roleid)

)

--角色权限

create table res_userrole

(

roleid INTEGER,

userid varchar2(30),--用户名

primary key(roleid,userid)

)

--资源

create table res_resource

(

resourceid varchar2(20),

resourcename varchar2(30),

resourcedesc varchar2(100),

primary key(resourceid)

)

--操作信息

create table res_operation

(

operationid varchar2(20),

operationname varchar2(30),

operationdesc varchar2(100),

primary key(operationid)

)

--res_operation 表的序列号

create sequence res_operation_seq;

--res_role 表的序列

create sequence res_role_seq;

--建立soperationid与sroleid两个序列分别用来产生Operation表与Role表的ID列

create sequence soperationid increment by 1 start with 1 nomaxvalue minvalue 1;

create sequence sroleid increment by 1 start with 1 nomaxvalue minvalue 1;

--表设计的原理

--根据交叉法来匹配权限

--1:根据用户表中的用户id关联到res_userrole的userid,然后再关联到res_role,查出用户对应的所有权限,存放到list中

--2:根据资源和操作查询出用户可以操作的所有许可res_permission,存放到list中

--3:通过同时遍历两个list,查询出是否存在交叉,如果存在就是有权限,否则为无权限

相关文档
最新文档