回收系统权限

格式:
revoke {系统权限||角色} {,{系统权限|角色名}}...
from {用户名|角色名|public}{,{用户名|角色名|public}}...
例如:
SQL> revoke create view from cat;


Revoke succeeded.


查询一下:
SQL> select * from dba_sys_privs
  2  where grantee='CAT';


GRANTEE                        PRIVILEGE                ADM
------------------------------ ------------------------ ---
CAT                            CREATE SESSION           YES
CAT                            CREATE TABLE             YES
CAT                            SELECT ANY TABLE         YES


由于cat用户将权限授予了dog,那么,dog的权限是否也被收回呢?我们查询一下:
SQL> select * from dba_sys_privs
  2  where grantee in('DOG','FOX','PIG');


GRANTEE                        PRIVILEGE                ADM
------------------------------ ------------------------ ---
DOG                            CREATE SESSION           YES
DOG                            SELECT ANY TABLE         YES
DOG                            CREATE TABLE             YES
FOX                            CREATE TABLE             YES
DOG                            CREATE VIEW              YES
FOX                            CREATE VIEW              YES
FOX                            SELECT ANY TABLE         YES
FOX                            CREATE SESSION           YES


查询显示:虽然cat权限被收回,但是其他用户没有影响。同时,虽然,cat用户授予了其他用户权限,但其他用户也有权限将cat用户的权限收回。


例如:以dog用户收回cat用户的权限:
SQL> conn dog/wangwang
Connected.


SQL> select * from session_privs;


PRIVILEGE
------------------------
CREATE SESSION
CREATE TABLE
SELECT ANY TABLE
CREATE VIEW


回收权限:
SQL> revoke create session from cat;


Revoke succeeded.


SQL> conn cat/miaomiao
ERROR:
ORA-01045: user CAT lacks CREATE SESSION privilege; logon denied




Warning: You are no longer connected to ORACLE.


发现:收回cat create session权限后,cat用户等不不上系统了。


我们再用system登陆查询一下权限:
SQL> conn system/oracle
Connected.


SQL> select * from dba_sys_privs where grantee in ('CAT','DOG','FOX','PIG');


GRANTEE                        PRIVILEGE                ADM
------------------------------ ------------------------ ---
DOG                            CREATE SESSION           YES
CAT                            CREATE TABLE             YES
DOG                            SELECT ANY TABLE         YES
CAT                            SELECT ANY TABLE         YES
DOG                            CREATE TABLE             YES
FOX                            CREATE TABLE             YES
DOG                            CREATE VIEW              YES
FOX                            CREATE VIEW              YES
FOX                            SELECT ANY TABLE         YES
FOX                            CREATE SESSION           YES
查询发现:cat用户只剩下了两个权限create table和select any table。
另一个权限被收回了。


注:授权的时候要谨慎,授予用户权限要使用最小化原则。只要够用就行。权利一定要掌握在自己的手里。





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值