[每日一题] OCP1z0-047 :2013-07-25 权限――角色与对象权限
有疑问可以去itpub讨论:http://www.itpub.net/thread-1804842-1-1.html
按题意,操作如下:
1、创建一个角色r1
sys@OCM> create role r1;
Role created.
2、角色r1可以查询和插入oe用户下的orders表
sys@OCM> grant select,insert on oe.orders to r1;
Grant succeeded.
3、把r1拥有的所有全权授权给scott用户
sys@OCM> grant r1 to scott;
Grant succeeded.
4、授予scott用户可以查oe用户下的orders表的权限
sys@OCM> grant select on oe.orders to scott;
Grant succeeded.
5、回收查oe用户下的orders表的权限
sys@OCM> revoke select on oe.orders from scott;
Revoke succeeded.
6、scott用户登录询查oe用户下的orders表
sys@OCM> conn scott/scott
Connected.scott@OCM> select * from oe.orders;
ORDER_IDORDER_DATE ORDER_MO CUSTOMER_ID ORDER_STATUS ORDER_TOTAL SALES_REP_ID PROMOTION_ID
--------------------------------------------------------------------------------------------- ----------- ------------ ----------- ------------ ------------
245817-AUG-07 05.34.12.234359 AM direct 101 0 78279.6 153
239720-NOV-07 06.41.54.696211 AM direct 102 1 42283.2 154
direct 105 2 7826 155
。。。。。。。。。。。省略。。。。。。。。。。。。。。。。。。。
245118-DEC-07 09.03.52.562632 AM direct 148 7 10474.6 154
direct 117 0 3878.4 163
245701-NOV-07 01.22.16.162632 PM direct 118 5 21586.2 159
105 rows selected.
用revoke命令回收了scott用户查oe用户下的orders表,但
Scott用户还是可以查出oe用户中的orders表记录。这是什么回事呢?
我们先来看角色r1的对象权限:
sys@OCM> select * from dba_tab_privs where grantee='R1';
GRANTEE OWNER TABLE_NAME GRANTOR PRIVILEGE GRA HIE
------------------------------------------------------------ ------------------------------------------------------------ ---------------------------------------- --- ---
R1 OE ORDERS OE SELECT NO NO
R1 OE ORDERS OE INSERT NO NO
说明R1角色拥用对oe用户下对orders表的查询和插入操作的权限。。。
查SCOTT用户所拥用的角色:
sys@OCM> select * from DBA_ROLE_PRIVS whereGRANTEE='SCOTT';
GRANTEE GRANTED_ROLE ADM DEF
------------------------------------------------------------ --- ---
SCOTT RESOURCE NO YES
SCOTT R1 NO YES
SCOTT CONNECT NO YES
可以看出SCOTT拥有R1角色,所以有查oe用户下orders表的权限。
如果回收scott用户下的R1角色,应该就能查oe用户下orders表的权限。
sys@OCM> revoke r1 from scott;
Revoke succeeded.
sys@OCM> conn scott/scott
Connected.
scott@OCM> select * from oe.orders;
select * from oe.orders
*
ERROR at line 1:
ORA-00942: table or view does not exist
这道题目是考用户的权限,角色和对象权限的分配及回收知识点。
参考:http://blog.csdn.net/guoyjoe/article/details/863593
希望大家一起补充知识点,找出每道题目的知识点,一起挖掘,分析,吃透。。。
正确答案是:A
[每日一题] OCP1z0-047 :2013-07-25 权限――角色与对象权限的更多相关文章
- CISP/CISA 每日一题 九(2017-11-30 09:25)
电子银行风险管理责任: 1.风险管理是董事会和高级管理层的责任 2.实施技术是信息技术高级管理层的责任 3.测量和监控风险是经营管理层的责任 管理层在实施一个新的电子银行应用程序之前要 ___ ...
- 老男孩IT教育-每日一题汇总
老男孩IT教育-每日一题汇总 第几天 第几周 日期 快速访问链接 第123天 第二十五周 2017年8月25日 出现Swap file….already exists以下错误如何解决? 第122天 2 ...
- 【JavaScript】【dp】Leetcode每日一题-解码方法
[JavaScript]Leetcode每日一题-解码方法 [题目描述] 一条包含字母 A-Z 的消息通过以下映射进行了 编码 : 'A' -> 1 'B' -> 2 ... 'Z' -& ...
- 【Java每日一题】20170106
20170105问题解析请点击今日问题下方的"[Java每日一题]20170106"查看(问题解析在公众号首发,公众号ID:weknow619) package Jan2017; ...
- 【Java每日一题】20170105
20170104问题解析请点击今日问题下方的"[Java每日一题]20170105"查看(问题解析在公众号首发,公众号ID:weknow619) package Jan2017; ...
- 【Java每日一题】20170104
20170103问题解析请点击今日问题下方的"[Java每日一题]20170104"查看(问题解析在公众号首发,公众号ID:weknow619) package Jan2017; ...
- 【Java每日一题】20170103
20161230问题解析请点击今日问题下方的"[Java每日一题]20170103"查看(问题解析在公众号首发,公众号ID:weknow619) package Jan2017; ...
- 【Java每日一题】20161230
// 20161229问题解析请点击今日问题下方的"[Java每日一题]20161230"查看(问题解析在公众号首发,公众号ID:weknow619)package Dec2016 ...
- 【Java每日一题】20161229
package Dec2016; import java.util.ArrayList; import java.util.List; public class Ques1229 { public s ...
随机推荐
- 6 个轻量级并且灵活的 PHP CMS 系统
Anchor CMS Just like its introduction says, Anchor has a very simple UI. The installation takes lite ...
- C++服务器linux开发环境管理
在游戏服务器开发中,跨平台不是必须的.线上游戏既有windows下的C++..Net服务器也有linux下的C++.go.erlang服务器.但是无论如何都要保证开发环境和线上运行环境的一致,否则不同 ...
- 最新Android 出现Please ensure that adb is correctly located at问题的解决方法
最近经常遇到下面的问题 遇到问题描述: 运行android程序控制台输出: [2013-07-23 17:28:06 - ] The connection to adb is down, and a ...
- 转:socket通信简介
转:http://blog.csdn.net/xiaoweige207/article/details/6211577/ 我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览器浏览网页 ...
- Android Timer的使用
1:服务端使用PHP <?php echo date('Y-m-d H:i:s'); ?> 2:activity_main.xml <RelativeLayout xmlns:and ...
- hdu 3681 Prison Break
http://acm.hdu.edu.cn/showproblem.php?pid=3681 题意:一个n*m的矩阵,'F'是起点.机器人从F出发,走到G可以充电,走到Y关掉开关,D不能走进,要求把所 ...
- Android系统的进程分类
1.前台进程:即当前正在前台运行的进程,说明用户当前正在与通过该进程与系统进行交互,所以该进程为最重要的进程,除非系统的内容已经到不堪重负的情况,否则系统是不会将改进程终止的.2.可见进程:一般还是显 ...
- How to make vcredist_x86 reinstall only if not yet installed
Since you don't want to tell what minimal version of Visual C++ redistributable package you require, ...
- 获取SQL段的执行时间
对SQL进行优化 经常会需要知道这条SQL语句执行的时间,这里介绍我的一种常用做法 DECLARE @d DATETIME SET @d=GETDATE() --do something --for ...
- Numerical Methods with MATLAB(1)
目前正在阅读MATLAB相关的书籍:Numerical Methods with MATLAB,现在感觉这本书写的还行, 细致基础,而且写的比较清楚,同时把malab和数值算法结合在一起. 目前刚看完 ...