ITPub博客

首页 > 数据库 > Oracle > 关于用户角色切换的问题(default role的用法)

关于用户角色切换的问题(default role的用法)

原创 Oracle 作者:EnochPersist 时间:2009-10-27 22:19:34 0 删除 编辑

首先创建2个角色,一个是有口令的,一个是没有口令的
create role test_role identified by test;
create role test_role1;
把一下的对象权限和角色,分别赋予这两个用户,test_role有insert的权限,test_role1只有select的权限
grant insert on dz.test to test_role;
grant select on dz.test to test_role1;
grant connect,resource to test_role;
grant connect,resource to test_role1;
下面创建一个用户 test
create user test identified by test
grant test_role,test_role to test;
设置用户test的缺省的角色是test_role1,
alter user role_user defaule role test_role1;
切换用户
conn test/test
select 没有问题,因为default role 是test_role1
select * from dz.test;
但是insert的时候
insert into dz.test values (1,'a');
ERROR at line 1:
ORA-01031: insufficient privileges
说明用户并没有test_role这个角色的权限
这时候我们切换一下角色,就ok了
set role test_role identified by test;
insert into dz.test values (1,'a');
1 row created.
这种情况有时管理比较方便。

[@more@]

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22531894/viewspace-1028203/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-09-14

  • 博文量
    8
  • 访问量
    7281