【权限管理】Oracle中查看、回收用户权限

一, Oracle 用户权限管理体系

简单介绍下用户、权限、角色,其中权限包括系统权限、对象权限,角色是一组权限和角色的组合,其中权限、角色可以授予给角色和用户。

二,查看用户及授予给用户的权限和角色

1.查看所有用户:
  select * from dba_users;
  select * from all_users;
  select * from user_users;

2.查看用户或角色的系统权限(直接授予给用户或角色的系统权限)
  select * from dba_sys_privs;
  select * from user_sys_privs;

3.查看角色(只能查看登录用户拥有的角色)所包含的系统权限

  sql>select * from role_sys_privs;

4.查看用户的对象权限:
  select * from dba_tab_privs;
  select * from all_tab_privs;
  select * from user_tab_privs;

5.查看所有角色:
  select * from dba_roles;

6.查看用户或角色所拥有的角色:
  select * from dba_role_privs;
  select * from user_role_privs;

7.查看哪些用户有sysdba或sysoper系统权限(查询时需要相应权限)

select * from V$PWFILE_USERS

 

注意:

1、以下语句可以查看Oracle提供的系统权限

select name from sys.system_privilege_map

2、查看一个用户的所有系统权限(包含角色的系统权限)

Sql代码

select privilege from dba_sys_privs where grantee='SCOTT'

union 

select privilege from dba_sys_privs where grantee in

(select granted_role from dba_role_privs where grantee='SCOTT' ); 


三、回收授予给用户的权限和角色

1,若要回收系统权限,则使用REVOKE命令,例如:
SQL>REVOKE CREATE TABLE FROM SCOTT;

2,若要回收对象权限,使用REVOKE,其语法如下:
REVOKE 对象权限名|ALL ON 对象名 FROM 用户名|角色名|PUBLIC。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值