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

本教程操作环境: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中文网

点赞(850) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部