最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

Oracle用户、角色权限管理上的几个误区

来源:动视网 责编:小采 时间:2020-11-09 11:00:52
文档

Oracle用户、角色权限管理上的几个误区

Oracle用户、角色权限管理上的几个误区:Oracle目前没有提供查看某个用户所有角色或所有权限的视图。要查看这类信息,一般通过如下SQL语句: 如果你想查看数据库中哪些用户具有修改SCOTT.DEPT表的权限,你会怎么查? 答:select * from dba_tab_privs where OWNER='SCOTT'
推荐度:
导读Oracle用户、角色权限管理上的几个误区:Oracle目前没有提供查看某个用户所有角色或所有权限的视图。要查看这类信息,一般通过如下SQL语句: 如果你想查看数据库中哪些用户具有修改SCOTT.DEPT表的权限,你会怎么查? 答:select * from dba_tab_privs where OWNER='SCOTT'


Oracle目前没有提供查看某个用户所有角色或所有权限的视图。要查看这类信息,一般通过如下SQL语句:

如果你想查看数据库中哪些用户具有修改SCOTT.DEPT表的权限,你会怎么查?

答:select * from dba_tab_privs where OWNER='SCOTT' and TABLE_NAME='DEPT';

这个语句结果是错误的.......如果角色A,有修改此表的权限,所有具有角色A的用户都被漏掉了。

如果你想查看哪些用户具有DBA权限,你会怎么查?你确定查询结果是正确的?

答:select grantee,granted_role from dba_role_privs where granted_role='DBA';

这个语句结果是错误的......,具体在第三部分测试。

如果你将CONNECT、RESOURCE角色授予某个用户,同时授予SELECT ON SCOTT.DEPT的权限,该如何查看这个用户拥有的权限明细?

答:不好查。

如何对比两个用户的表级权限有无差异?

答:select * from dba_tab_privs where grantee='A' ; select * from dba_tab_privs where grantee='B' ;一看就出来了。

这个语句结果是错误的,如果将角色C授予A,角色D授予B。dba_tab_privs中都不会有记录。如果角色C、D权限不一致,问题就出来了。

看完本文,你就明白为什么了。呵,相信本文可以让您对Oracle的权限管理更加得心应手。

一、通用查询

Oracle目前没有提供查看某个用户所有角色或所有权限的视图。要查看这类信息,,一般通过如下SQL语句:

SQL> select count(*) from session_privs;

COUNT(*)
----------
202

SQL> select count(*) from session_roles;

COUNT(*)
----------
20

SQL>

这两个视图,只能查看当前连接用户拥有的权限和角色。

DBA如果需要查看其它用户的权限、角色,必须切换用户登入,再执行上述SQL。

文档

Oracle用户、角色权限管理上的几个误区

Oracle用户、角色权限管理上的几个误区:Oracle目前没有提供查看某个用户所有角色或所有权限的视图。要查看这类信息,一般通过如下SQL语句: 如果你想查看数据库中哪些用户具有修改SCOTT.DEPT表的权限,你会怎么查? 答:select * from dba_tab_privs where OWNER='SCOTT'
推荐度:
标签: 控制 授权 用户
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top