本章讲解一下如何使用Shiro+oracle实现用户授权。所谓授权,就是判断当前用户具体哪些权限,能够执行哪些操作,或是访问哪些资源(Web中的URL,又或是页面上的一个按钮,一个编辑框等都可以视为资源)。因此我们需要数据表来存储这些资源信息,以及用户、角色和资源的分配关系。上文中已经创建了用户表,在本文中我们需要再创始角色表、资源表,以及用户和角色、角色和资源之间的关系表。这里仅为了需要让测试程序跑通,所以字段都很简单,在使用中可根据实际情况对字段进行增加。
一、建表
--1、已经创建好的用户表
CREATETABLEsec_user(
user_id number(10)primarykey,
user_name varchar2(64),
passwordvarchar2(128),
created_time date ,
update_time timestamp
) ;
select *from sec_user;
--2、创建角色表、
CREATETABLE sec_role (
role_id number(10)primarykey,
role_name varchar2(64),
created_time date,
update_time date
)
select *from sec_role ;
dropsequence role_seq;
createsequence role_seq;
deletefrom sec_role ;
insertinto sec_rolevalues(role_seq.nextval,'admin','2-2月-12','2-2月-12');
select *from sec_role;
--3、权限表
CREATETABLE sec_permission(
permission_id number(10)primarykey,
permission_name varchar2(64),
created_time date ,
update_time date
);
createsequence permission_seq;
insertinto sec_permissionvalues(permission_seq.nextval,'manager','2-2月-12','2-2月-12');
insertinto sec_permissionvalues(permission_seq.nextval,'create_user1','2-2月-12','2-2月-12');
select *from sec_permission;
--4、用户和角色的关系表