角色的回收和删除

当不需要角色所授予的权限后,可以使用revoke命令从用户那里回收角色。
从用户那里回收角色需要with admin option或grant any role权限
为了演示,我们先将角色clerk和manager检验方法去掉。
如下:
SQL> conn system/oracle
Connected.


SQL> alter role clerk not identified;


Role altered.
SQL> alter role manager not identified;


Role altered.


(去掉角色clerk和manager的口令检验)


查询一下:
SQL> select * from dba_roles
  2  where role in('CLERK','SALES','MANAGER');


ROLE                           PASSWORD
------------------------------ --------
CLERK                          NO
SALES                          NO
MANAGER                        NO


将角色赋予用户:
SQL> grant clerk,manager,sales to cat,dog,pig,fox;


Grant succeeded.
SQL> select * from dba_role_privs
  2  where grantee in ('CAT','DOG','PIG','FOX');


GRANTEE    GRANTED_ROLE                   ADM DEF
---------- ------------------------------ --- ---
CAT        CLERK                          NO  YES
FOX        MANAGER                        NO  YES
FOX        SALES                          NO  YES
PIG        MANAGER                        NO  YES
DOG        MANAGER                        NO  YES
PIG        CLERK                          NO  YES
CAT        SALES                          NO  NO
DOG        CLERK                          NO  YES
CAT        MANAGER                        YES YES
DOG        SALES                          NO  YES
PIG        SALES                          NO  YES


GRANTEE    GRANTED_ROLE                   ADM DEF
---------- ------------------------------ --- ---
FOX        CLERK                          NO  YES


收回角色:
SQL> revoke manager,sales from pig,fox;


Revoke succeeded.
SQL> select * from dba_role_privs where grantee in ('CAT','DOG','PIG','FOX');


GRANTEE    GRANTED_ROLE                   ADM DEF
---------- ------------------------------ --- ---
CAT        CLERK                          NO  YES
DOG        MANAGER                        NO  YES
PIG        CLERK                          NO  YES
CAT        SALES                          NO  NO
DOG        CLERK                          NO  YES
CAT        MANAGER                        YES YES
DOG        SALES                          NO  YES
FOX        CLERK                          NO  YES


8 rows selected.


显示结果表明:已经回收角色manager,sales从用户pig,fox


将manager,sales角色授予public:


SQL> grant manager,sales to public;


Grant succeeded.






回收角色:
SQL> revoke manager,sales from public;


Revoke succeeded.




删除角色:
SQL> drop role sales;


Role dropped.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值