角色的两个特性
1)角色的延迟性
延迟生效
立即让角色生效的方法:
set role 角色名;
例如:
set role resource;
延迟回收
下面用实验证明延迟回收:
会话(1)scott:
sys@ORCL> conn scott/oracle
Connected.
scott@ORCL> select * from user_role_privs;
USERNAME GRANTED_ROLE ADM DEF OS_
------------------------------ ------------------------------ --- --- ---
SCOTT CONNECT NO YES NO
SCOTT RESOURCE NO YES NO
会话(2)sys:
idle> conn / as sysdba
Connected.
sys@ORCL> revoke resource from scott; --回收resource角色
Revoke succeeded.
回到会话(1)scott:
scott@ORCL> select * from session_roles; --resource角色依然健在
ROLE
------------------------------
CONNECT
RESOURCE
scott@ORCL> select * from user_role_privs;
USERNAME GRANTED_ROLE ADM DEF OS_
------------------------------ ------------------------------ --- --- ---
SCOTT CONNECT NO YES NO
此时,为了保证数据库的安全,应该连带把scott所在的会话给杀掉!
2)角色的默认性
如果该角色是default role,那么即便是有密码,但若重新登入,则密码形如虚设。
所以,有密码的角色都必须不能是default role
会话1:sys
sys@ORCL> drop role r1;
Role dropped.
sys@ORCL> create role r1 identified by r1;
Role created.
sys@ORCL> grant select on hr.t to r1;
Grant succeeded.
sys@ORCL> grant r1 to scott;
Grant succeeded.
sys@ORCL> alter user scott default role connect;
User altered.
会话2:scott
scott@ORCL> select GRANTED_ROLE,DEFAULT_ROLE from user_role_privs;
GRANTED_ROLE DEF
------------------------------ ---
CONNECT YES
R1 NO
scott@ORCL> select * from hr.t;
NAME
--------------------
think
scott@ORCL> exit;
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
[oracle@localhost ~]$ sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on Sun Sep 2 22:00:21 2012
Copyright (c) 1982, 2005, Oracle. All rights reserved.
idle> conn scott/oracle
Connected.
scott@ORCL> select GRANTED_ROLE,DEFAULT_ROLE from user_role_privs;
GRANTED_ROLE DEF
------------------------------ ---
CONNECT YES
R1 NO
scott@ORCL> select * from hr.t;
select * from hr.t
*
ERROR at line 1:
ORA-00942: table or view does not exist
会话1:sys
sys@ORCL> alter user scott default role connect,r1;
User altered.
会话2:scott
scott@ORCL> select GRANTED_ROLE,DEFAULT_ROLE from user_role_privs;
GRANTED_ROLE DEF
------------------------------ ---
CONNECT YES
R1 YES
scott@ORCL> select * from hr.t;
select * from hr.t
*
ERROR at line 1:
ORA-00942: table or view does not exist
scott@ORCL> set role r1 identified by r1;
Role set.
scott@ORCL> select * from hr.t;
NAME
--------------------
think
scott@ORCL> exit;
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
[oracle@localhost ~]$ sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on Sun Sep 2 22:05:16 2012
Copyright (c) 1982, 2005, Oracle. All rights reserved.
idle> conn scott/oracle
Connected.
scott@ORCL> select GRANTED_ROLE,DEFAULT_ROLE from user_role_privs;
GRANTED_ROLE DEF
------------------------------ ---
CONNECT YES
R1 YES
scott@ORCL> select * from hr.t;
NAME
--------------------
think
分享到:
相关推荐
Oracle 查询两个日期之间的所有月份
oracle角色大全信息oracle角色大全信息oracle角色大全信息oracle角色大全信息oracle角色大全信息
在实际工作中经常遇到截取两个相同字符串之间的字符的oracle问题,以下是相关语句
Oracle关系型数据库管理系统是世界上流行的关系数据库,它是一个极其强大、灵活和复杂的系统,本文向大家介绍使用SQL查两个Oracle数据表查询的相同数据的方法。第一种方法:利用操作符intersect,intersect操作符...
10 oracle管理权限和角色 PPT 10 oracle管理权限和角色 PPT
为了提高性能,我们针对Oracle数据库本身...数据库应用大体可以分为OLAP和OLTP两大类,即:联机事务分析(数据仓库)和联机事务处理(事务应用)我们的应用系统,其应用特性主要是联机事务处理,又包含了少量的数据仓库特性。
oracle 用户、权限和角色管理,oracle 人员必看。
oracle双实例 监听配置 及数据库的启动
oracle系统自带角色说明-实用-精练
两个分页标签,非常稳定的,可以放心使用。分别用Mysql,Oracle实现的。在Idea下可以打开
oracle的两个数据库互相访问脚本,用于同时访问两个数据库,并且对两个数据库进行操作
一步一图在两个Oracle Linux虚拟机上安装Oracle11gR2RAC
oracle两个实例,配置一个监听 主要是修改listener.ora文件和tnsnames.ora文件
oracle语句查询两个日期之间星期六、星期日的天数
前言:ORACLE 数据库系统预先定义了 CONNECT 、RESOURCE、 DBA、 EXP_FULL_DATABASE、IMP_FULL_DATABASE
ORACLE的两个补丁合集: 1.p3006854_9204_LINUX.zip 2.p2617419_210_GENERIC.zip
Oracle用户、权限、角色管理
包含了mysql和oracle两个不同数据库的jdbc适用于java或jmeter工具连接两种数据库
本文主要是总结了Oracle中两个主要的用户、三个重要权限的区别和联系
安装centos,需要的两个oracle文件