首页 >数据库 >Oracle >oracle怎么查询角色

oracle怎么查询角色

青灯夜游
青灯夜游原创
2022-03-17 15:34:546629浏览

查询方法:1、用“select*from dba_roles;”可查看所有角色;2、用“select*from dba_role_privs;”或“select * from user_role_privs;”可查看当前用户所拥有的角色。

oracle怎么查询角色

本教程操作环境:Windows7系统、Oracle 11g版、Dell G3电脑。

何为角色

角色。角色是一组权限的集合,将角色赋给一个用户,这个用户就拥有了这个角色中的所有权限。

权限管理是 Oracle 系统的精华,不同用户登录到同一数据库中,可能看到不同数量的表,拥有不同的权限。

Oracle 的权限分为系统权限和数据对象权限,共一百多种,如果单独对用户授权,很囧,有一些用户需要的权限是相同的,就把这些用户归为同一类——某种角色,通过设立一些有预定权限的角色简化和明确授权操作,角色出现的动机也就是为了简化权限管理,它是权限的集合。

一般做法是:系统把权限赋给角色,然后把角色赋给用户,当然也可以直接把某权限赋给用户。Oracle 提供细粒度的权限,可以对表的某一列单独设置权限,可以对某用户查询某表自动增添 where 限制条件。

Oracle 的角色存放在表 dba_roles 中,某角色包含的系统权限存放在  dba_sys_privs 中,包含的对象权限存放在 dba_tab_privs 中。

oracle查询角色

1、查看所有角色:

select * from dba_roles;

2、查看当前用户所拥有的角色:

select * from dba_role_privs;
select * from user_role_privs;

扩展知识:

查看当前用户的系统权限和表级权限

select * from user_sys_privs
select * from user_tab_privs

查看用户下所有的表

select * from user_tables

显示用户信息(所属表空间)

select default_tablespace,temporary_tablespace from dba_users

显示当前会话所具有的权限

select * from session_privs

显示指定用户所具有的系统权限

select * from dba_sys_privs

显示特权用户

select * from v$pwfile_users

推荐教程:《Oracle教程

以上是oracle怎么查询角色的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn