Oracle入门(九A)之用户的权限或角色

转载自 查看Oracle用户的权限或角色

前几天被问到一些关于权限和角色的问题,今天抽时间总结一下如何查看Oracle用户的权限或角色,在之前的博文中,写过 SYS,SYSTEM,DBA,SYSDBA,SYSOPER的区别与联系 以及  Oracle中定义者权限和调用者权限案例分析 这两篇博文,读者可以参考阅读!Oracle的东西感觉很杂,抽空闲的时间多总结也是对知识的一个梳理以及对自己的一个提高,文中若有错误或者不当之处,请大家指出,谢谢!


一、查看用户

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


二、查看角色

1.当前用户被激活的全部角色
  select * from session_roles;


2.当前当前用户被授予的角色
  select * from user_role_privs;


3.全部用户被授予的角色
  select * from dba_role_privs;


4、查看某个用户所拥有的角色
select * from dba_role_privs where grantee='用户名';


5、查看某个角色所拥有的权限
select * from dba_sys_privs where grantee='CONNECT';


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



三、查看权限

1.基本权限查询:
select * from session_privs; --当前用户所拥有的全部权限
select * from user_sys_privs;--当前用户的系统权限
select * from user_tab_privs;--当前用户的对象权限
select * from dba_sys_privs ;--查询某个用户所拥有的系统权限
select * from role_sys_privs;--查看角色(只能查看登陆用户拥有的角色)所包含的权限


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


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


3.查看哪些用户有sysdba或sysoper系统权限(查询时需要相应权限)
  select * from v$pwfile_users; 


扩展
1、以下语句可以查看Oracle提供的系统权限
select name from sys.system_privilege_map

2、查看一个用户的所有系统权限(包含角色的系统权限)
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' ); 

3、 查询当前用户可以访问的所有数据字典视图。 
select * from dict where comments like '%grant%';   

4、显示当前数据库的全称
select * from global_name;   

问题 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究竟有多少种角色?   
select * from dba_roles;   

问题 3:如何查看某个用户,具有什么样的角色?   
select * from dba_role_privs where grantee='用户名'  


问题4:查看哪些用户具有DBA的角色

select grantee from dba_role_privs where granted_role='DBA';


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/329420.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

25.从生磁盘到文件

【README】 1.本文内容总结自 B站 《操作系统-哈工大李治军老师》,内容非常棒,墙裂推荐; 2.文件:煮熟的磁盘,或熟磁盘; 本节的主要内容是讨论 如何从文件得到盘块号; 3.磁盘操作抽象&#xf…

Storm 1.0.1发布 .NET 适配也已到来

Apache Storm 1.0.0刚发布不久,1.0.1版本也在几天前到来;该版本主要是完成一些BUG修复和小的改进,通过一段时间新版本的使用,特将个人感受和一些遇到的问题归纳如下;另外 .NET 版本的 Storm 适配器也已经发布&#xff…

布隆过滤器速度_详解布隆过滤器的原理、使用场景和注意事项

今天碰到个业务,他的 Redis 集群有个大 Value 用途是作为布隆过滤器,但沟通的时候被小怼了一下,意思大概是 “布隆过滤器原理都不懂,还要我优化?”。技术菜被人怼认了、怪不得别人,自己之前确实只是听说过这…

Oracle入门(十四)之PL/SQL

一、PL/SQL 基本语法 PL/SQL语言是模块式的过程化SQL,是oracle公司对SQL的扩展。 (1)(2)(3)(5)(6)(7)数据类型Number 数字型Varchar2 …

26.文件使用磁盘的代码实现

【README】 1.本文内容总结自 B站 《操作系统-哈工大李治军老师》,内容非常棒,墙裂推荐; 2.文件内容复习: 1)如何从生磁盘抽象为文件? 核心是从字符流位置算出盘块号;2)如何算出盘…

.NET Core全新的配置管理[共9篇]

提到“配置”二字,我想绝大部分.NET开发人员脑海中会立马浮现出两个特殊文件的身影,那就是我们再熟悉不过的app.config和web.config,多年以来我们已经习惯了将结构化的配置信息定义在这两个文件之中。到了.NET Core的时候,很多我们…

redis存opc_KEPServerEX6完整免费版

KEPServerEX6完整免费版是一款先进的连接平台,主要用于为您的应用程序提供单一来源的工业自动化数据,通过连接、管理、监视和控制不通的自动化设备和应用程序来实现工业数据。具有严谨的技术特征,支持多达250种以上的通讯协定,可连…

Oracle入门(十四B)之PL/SQL异常处理

定义:程序执行过程的警告或错误成为例外(Exception) 一、常见预定义错误 二、非预定义错误及用户定义错误 (1)非预定义oracle错误其他标准的oracle错误,可以自定义异常名,将其与指定oracle错误关联,由系统触发。 例子…

C#读书雷达 | TW洞见

大家都知道,ThoughtWorks的技术雷达每年都会发布两到三次,它不但是业界技术趋势的标杆,更提供了一种卓有成效的方法论,即打造自己的技术雷达。在这种思想的驱动下,我们诞生了自己的读书雷达。但这份雷达略显high level…

27.目录与文件系统

【README】 1.本文内容总结自 B站 《操作系统-哈工大李治军老师》,内容非常棒,墙裂推荐; 2.第4层抽象:抽象整个磁盘到文件系统 【1】文件系统,抽象整个磁盘(第4层抽象) 【图解】整个磁盘抽象1…

dd命令打包多个文件_linux的tar命令详情;linux多个文件压缩打包到一个压缩文件...

tar命令可以用来压缩打包单文件、多个文件、单个目录、多个目录。Linux打包命令_tartar命令可以用来压缩打包单文件、多个文件、单个目录、多个目录。常用格式:单个文件压缩打包 tar czvf my.tar.gz file1多个文件压缩打包 tar czvf my.tar.gz file1 file2,...(file…

28.文件目录解析代码实现

【README】 1.本文内容总结自 B站 《操作系统-哈工大李治军老师》,内容非常棒,墙裂推荐; 背景: 磁盘格式化后,其组成部分包括引导块,超级块,inode使用位图,盘块使用位图&#xff0…

Oracle入门(十四A)之PL/SQL 基本结构

一、条件控制语句 &#xff08;1&#xff09;条件语句Iif…then…end if形式1:if <布尔表达式> then…(pl/sql和sql)…end if;&#xff08;2&#xff09;条件语句II if…then…else … end if 形式2&#xff1a;if <布尔表达式> then…(pl/sql和sql)else…end if;…

利用记事本创建一个ASP.NET Core RC2 MVC应用

步骤一、安装最新的.NET Core SDK 我们可以根据自身的操作系统环境从https://github.com/dotnet/cli上下载.NET Core最新的SDK&#xff0c;这个SDK包含.NET Core Runtime和一些有用工具&#xff08;比如命令行&#xff09;。如果你已经安装了老旧的版本&#xff0c;我个人建议你…

datatable中某一列最小值_获取DataTable 某一列所有值

//获取某一列值string orderids (from d in dt.AsEnumerable() select d.Field("OrderID")).ToList().ListToString();/// /// 判断字符串是否在某字符串数组当中/// /// /// /// public static bool In(this string value, params string[] items){return items.An…

29.操作系统对磁盘的4层抽象小结

【README】 本文总结了操作系统 对磁盘的4层抽象&#xff0c;并给出了详细介绍的post 链接&#xff1b; 【1】对磁盘的4层抽象 【1.1】对磁盘的第1层抽象 通过盘块号读写磁盘&#xff08;读写多个扇区&#xff09;&#xff1b; 因为磁盘底层操作的单位是扇区&#xff08;51…

Oracle入门(十四C)之转换函数

一、数据转换类型 为数据库创建表时&#xff0c;SQL 程序员必须定义在表的各个字段中存储何种数据。在 SQL 中&#xff0c;有几种不同的数据类型。这些数据类型用于定义每个列中可以包含的值的范围。 &#xff08;1&#xff09;在本文中将使用以下数据类型VARCHAR2 CHAR NUMBER…

发布在即!.NET Core 1.0 RC2已准备就绪

先说点废话&#xff0c;从去年夏天就开始关注学习ASP.NET Core&#xff0c;那时候的版本还是beta5&#xff0c;断断续续不停踩坑、一路研究到11月份RC1发布。 在这个乐此不疲的过程里&#xff0c;学习了很多新的东西&#xff0c;对ASP.NET Core也是越来越喜爱。然而到现在&…

1.java IO模型(BIO,NIO,AIO)

【README】 本文介绍了 3种 java io模型&#xff0c;包括 BIO&#xff0c;NIO&#xff0c; AIO&#xff1b; IO模型名称 描述 工作原理 BIO-Blocking IO 同步并阻塞式IO 一个服务器线程处理一个客户端连接 NIO-Non-blocking IO 同步非阻塞式IO 一个服务器线程处理多个…

Oracle入门(十四D)之常规函数

一、NULL处理 &#xff08;1&#xff09;函数的计算过程 到目前为止&#xff0c;您已经学会了在简单语句中应用单行函数。不过&#xff0c;函数可以嵌套任意层。所以&#xff0c;了解嵌套函数的计算过程非常重要。下例就是一个嵌套函数。其计算过程是从最里层开始计算&#xff…