如何查看某个角色被授予的权限

Posted 太古丶凶兽

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何查看某个角色被授予的权限相关的知识,希望对你有一定的参考价值。

select * from dba_role_privs; 授予用户和其他角色的角色
select * from dba_sys_privs;  授予用户和其他角色的系统权限
select * from dba_tab_privs;  数据库中对象的所有授权

参考:查看角色 权限 Oracle     谷歌

DBA是用户名,是角色名?角色名

=========================================

oracle 角色和权限的关系查看

 

例如:要查看 scott 具有的角色,可查询 dba_role_privs;   
SQL> select * from dba_role_privs where grantee=\'SCOTT\';   
  
//查询 orale 中所有的系统权限,一般是dba   
select * from system_privilege_map order by name;   
//查询 oracle 中所有对象权限,一般是dba   
select distinct privilege from dba_tab_privs;   
//查询 oracle 中所有的角色,一般是dba   
select * from dba_roles;   
//查询数据库的表空间   
select tablespace_name from dba_tablespaces;   
  
问题 1:如何查询一个角色包括的权限?   
       a.一个角色包含的系统权限   
         select * from dba_sys_privs where grantee=\'角色名\'  

         select * from dba_sya_privs where grantee=\'COONNECT\'; connect要大写
         另外也可以这样查看:   
         select * from role_sys_privs where role=\'角色名\'   
       b.一个角色包含的对象权限   
         select * from dba_tab_privs where grantee=\'角色名\'   
问题 2:oracle 究竟         多少种角色?   
SQL> select * from dba_roles;   
问题 3:如何查看某个用户,具  什么样的角色?   
select * from dba_role_privs where grantee=\'用户名\'  


 显示当前用户可以访问的所有数据字典视图。 
select * from dict where comments like \'%grant%\';   
 显示当前数据库的全称
select * from global_name;   
  
 其它说明  
数据字典记录          oracle 数据库的所有系统信息。通过查询数据字典可以取得以 
下系统信息:比如   
1.对象定义情况   
2.对象 占用空间大小   
3.列信息   
4.约束信息   
...   
但是因为这些个信息,可以通过 pl/sql developer工具查询得到,所以这里我 
就飘过。  

=======================

详解查看Oracle用户权限的七种方法

 

 

 

 

 

查看Oracle用户权限一般要通过一些实际操作,首先需要遍历所有用户,然后才是查看Oracle用户的权限等等操作。希望本文能给大家有所帮助。

1.查看所有用户:

  1. select * from dba_users;  
  2. select * from all_users;  
  3. select * from user_users; 

2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限):

  1. select * from dba_sys_privs;  
  2. select * from user_sys_privs; 

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

  1. sql>select * from role_sys_privs; 

4.查看用户对象权限:

  1. select * from dba_tab_privs;  
  2. select * from all_tab_privs;  
  3. select * from user_tab_privs; 

5.查看所有角色:

  1. select * from dba_roles; 

6.查看用户或角色所拥有的角色:

  1. select * from dba_role_privs;  
  2. select * from user_role_privs; 

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

    1. select * from V$PWFILE_USERS

以上是关于如何查看某个角色被授予的权限的主要内容,如果未能解决你的问题,请参考以下文章

oracle怎么授权授权的权限

Oracle中如何授予某个新用户create table权限,那么这个用户就只有creat table权限

Oracle中如何授予某个新用户create table权限,那么这个用户就只有creat table权限

MySQL 查看用户授予的权限

MySQL的安全设置

如何枚举授予 Oracle 角色的权限列表?