查看: 535|回复: 1

角色管理

 关闭 [复制链接]

签到天数: 2592 天

连续签到: 6 天

[LV.Master]至尊海神IIIIII

发表于 2010-8-6 20:35 | 显示全部楼层 |阅读模式
角色管理


1.角色的四种方式:

2.max_enabled_roles限制会话中可以enable的数量,因为enable会话占用的是 UGA
3.角色的传递使用with admin option,有该权限的用户可以自己撤销该角色
4.set role none在会话中将用户角色清空,退出会话即恢复默认角色
实验一:有with admin option可以自己撤销
SQL> grant security_admin to security_admin_user with admin option;
授权成功。
SQL> conn security_admin_user/admin
已连接。
SQL>  revoke security_admin from security_admin_user;
撤销成功
实验二:创建角色,不管加不加口令验证,赋给用户后都是默认权限
当用alter....default role设定了默认权限后,只能在会话中用set role使非默认权限生效,生效只在会话中。

SQL> create role role1 identified by role1;
角色已创建。
SQL> grant select on scott.dept to role1;
授权成功。
SQL> grant role1 to y;
授权成功。
SQL>  select grantee,default_role,granted_role from dba_role_privs where
grantee='Y';
GRANTEE                        DEF GRANTED_ROLE
------------------------------ --- ------------------------------
Y                              YES ROLE2
Y                              YES CONNECT
Y                              YES TESTROLE1
Y                              YES ROLE1
SQL> conn y/y
已连接。
SQL> select count(*) from scott.dept;
  COUNT(*)
----------
         4
SQL> conn sys/oracle as sysdba
已连接。
SQL> alter user y default role connect,role2;
用户已更改。
SQL>  select grantee,default_role,granted_role from dba_role_privs where grantee
GRANTEE                        DEF GRANTED_ROLE
------------------------------ --- ------------------------------
Y                              YES ROLE2
Y                              YES CONNECT
Y                              NO  TESTROLE1
Y                              NO  ROLE1
SQL> conn y/y
已连接。
SQL> select count(*) from scott.dept;
select count(*) from scott.dept
                           *
第 1 行出现错误:
ORA-00942: 表或视图不存在
<
PCOS系统下载站:http://zhuangji.wang

签到天数: 1414 天

连续签到: 0 天

[LV.10]逍遥海仙III

发表于 2010-8-6 20:51 | 显示全部楼层
如何角色管理
PCOS系统下载站:http://zhuangji.wang
回复 支持 反对

使用道具 举报

本版积分规则