Oracle数据安全(四)j角色管理
一.角色管理的概述
1.角色的概念
为了简化数据库权限的管理,在Oracle数据库中引入了角色的概念。所谓的角色就是一系列相关权限的集合。
2.角色的特点
在数据库中,角色的名称必须是唯一的,不能与用户同名。
由于角色不是模式对象,当创建角色的用户被删除时对角色没有任何影响。
角色可以包含任何的系统权限和对象权限
角色可以授予任何数据库用户和其他角色
授予用户的角色可以随时禁用或激活
可以使用default role语句设置用户的默认角色
如果创建角色时指定需要验证,则激活该角色时需要提供验证信息
可以随时增加或删除角色所具有的权限
3.优点
减少权限管理的工作量。
实现权限的动态管理
有效的使用权限
提供应用安全性
4.角色的分类 主要分为预定义角色与自定义角色
二.预定义角色
在Oracle11g数据库中有50多个预定义角色。最常用的有
dba
resource
connect等
查询当前数据库的的所有预定义角色
SQL> select * from dba_roles; ROLE PASSWORD_REQUIRED AUTHENTICATION_TYPE
------------------------------ ----------------- -------------------
CONNECT NO NONE
RESOURCE NO NONE
DBA NO NONE
SELECT_CATALOG_ROLE NO NONE
EXECUTE_CATALOG_ROLE NO NONE
DELETE_CATALOG_ROLE NO NONE
EXP_FULL_DATABASE NO NONE
IMP_FULL_DATABASE NO NONE
LOGSTDBY_ADMINISTRATOR NO NONE
DBFS_ROLE NO NONE
AQ_ADMINISTRATOR_ROLE NO NONE
AQ_USER_ROLE NO NONE
。。。。。。。
这是所有的预定义的所有的角色
三.创建角色
语法
CREATE ROLE role[NOT IDENTIFIED]|[IDENTIFIED [BY password]]|EXTERNALLY|GLOBALLY
NOT IDENTIFIED:角色曹勇数据库认证,激活时不需要口令
创建4个角色,一个采用不需要口令数据库认证,一个采用需要口令数据库认证,一个采用操作系统认证,一个采用全局认证
SQL> create role role_emp; Role created SQL> create role role_emp identified by role_manager; SQL> create role role_manager identified by role_manager; Role created SQL> create role role_external identified externally; Role created SQL> create role role_global identified globally; Role created
四.角色权限的授予与回收
需要注意的
1.使用grant语句为角色授权的时候,自己需要grant admin option,或者是grant grant option
2.在Oracle11 g中不允许角色授权带有grant admin option,或者是grant grant option
五.修改角色
ALTER ROLE role[NOT IDENTIFIED]|[IDENTIFIED [BY password]]|EXTERNALLY|GLOBALLY
六.禁用与激活角色
1.禁用所有角色
set role none;
2.激活指定角色
set role connect ,resource,role_emp identified by role_emp;
3.激活除了个别角色外其他所有角色
set role all except role_manager,role_emp;
4.激活所有角色
set role all;
5.删除角色
drop role role_emp;
七.利用角色进行权限管理
设置用户的默认角色
alter user user default role role_list|[all [except role_list]]|none;
1.禁用用户user1的所有角色,当用户user1登录数据库时所有角色处于禁用状态
alter user user1 default role none;
2.将用户user1的角色connect,resource设置为默认角色
alter user user1 default role connect,resource;
3.将用户的所有角色设置为默认角色
alter user user1 default role all;
4.将用户除默认角色外的,其他角色都设置为默认角色
alte user user1 default role all execpt resource;
Oracle数据安全(四)j角色管理的更多相关文章
- (十四)角色管理(Ztree插件的基本使用)
1. 建表 角色表 菜单表 角色-菜单(这个表中的role_id和menuu_id都不能被设置为主键,否则当插入一个新角色的时候,一个角色可能拥有多个菜单(role_id重复),一个菜单可能被多个角色 ...
- Oracle用户、权限、角色管理(转)
http://blog.csdn.net/junmail/article/details/4381287 Oracle 权限设置一.权限分类:系统权限:系统规定用户使用数据库的权限.(系统权限是对用户 ...
- Oracle用户、权限、角色管理
Oracle 权限设置一.权限分类:系统权限:系统规定用户使用数据库的权限.(系统权限是对用户而言). 实体权限:某种权限用户对其它用户的表或视图的存取权限.(是针对表或视图而言的). 二.系统权 ...
- Oracle用户管理和角色管理
原博:http://liwx.iteye.com/blog/1182251 一.创建用户的Profile文件 SQL> create profile student limit // stude ...
- Oracle用户、授权、角色管理
创建和删除用户是Oracle用户管理中的常见操作,但这其中隐含了Oracle数据库系统的系统权限与对象权限方面的知识.掌握还Oracle用户的授权操作和原理,可以有效提升我们的工作效率. Oracle ...
- Oracle创建表空间、用户管理、角色管理
内容:Oracle创建表空间.用户管理.角色管理 1.用系统用户登录Oracle 默认的系统用户: sys/system.sysman.scott sys:权限最大,超级用户,可以完成所有任务, 默认 ...
- Oracle 用户、授权、角色管理
Oracle 用户管理 一.创建用户的Profile文件SQL> create profile student limit // student为资源文件名FAILED_LOGIN_ATTEMP ...
- Oracle用户、权限、角色管理学习(文字很系统)
Oracle用户.权限.角色管理 2009-03-16 13:20:50 标签:oracle 数据库 休闲 职场 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明 ...
- Oracle 用户、角色管理简介
Oracle 用户.角色管理简介 by:授客 QQ:1033553122 创建用户 形式1:创建名为testacc2的用户 CREATE USER testacc2 IDENTIFIED BY abc ...
随机推荐
- J2EE是什么?
解答:从整体上讲,J2EE是使用Java技术开发企业级应用的工业标准,它是Java技术不断适应和促进企业级应用过程中的产物.适用于企业级应用的J2EE,提供一个平台独立的.可移植的.多用户的.安全的和 ...
- JQuery基本选择器和基本动画方法总结
刚开始接触JQuery是在大三的时候,那时候先学的Javascript,然后跳跃到JQuery,就一个字,爽.但因为之前用的不是太多,所以很多都忘了,直接导致的后果就是之前在一家公司面试,面试官问我要 ...
- python urllib2导出elasticsearch数据时 返回 "urllib2.HTTPError: HTTP Error 500: Internal Server Error"
0.业务场景 将ES中某个index的某个字段的所有数据,导出到文件中 1.ES数据导出方法简述 ES数据导出方法,我主要找到了以下几个方面,欢迎大家补充: ES官方API:snapshot and ...
- 【Python】IDLE清屏
上网搜,没搜到可用的快捷键.但看到一个通过打印空内容来清屏的方法,smart ef clear(): for i in range(60): print
- sql privot
http://www.studyofnet.com/news/295.html 本文导读:T-SQL语句中,Pivot运算符用于在列和行之间对数据进行旋转或透视转换,PIVOT命令可以实现数据表的列转 ...
- iOS App 审核被拒的原因搜罗
本文转载至 http://ju.outofmemory.cn/entry/108500 iOS app 审核 1.程序有重大bug,程序不能启动,或者中途退出. 2.绕过苹果的付费渠道,我们之前游 ...
- HTML-HTML链接JavaScript的几种方法
把JavaScript文件放在head中 标准方法是把JavaScript文件放到head标签内. <head> <script type="text/javascript ...
- 细说多线程之Thread VS Runnable
[线程创建的两种方式] [线程的生命周期] ● 就绪:创建了线程对象后,调用了线程的start(). (注意:此时线程只是进入了线程队列,等待获取CPU服务,具备了运行的条件,但并不一定已经开始运行了 ...
- docker 从容器中拷文件到宿主机器中
sudo docker cp 1d051604e0ea:/root/data /home/developer/zhanghui/data
- 【BZOJ4345】[POI2016]Korale 堆(模拟搜索)
[BZOJ4345][POI2016]Korale Description 有n个带标号的珠子,第i个珠子的价值为a[i].现在你可以选择若干个珠子组成项链(也可以一个都不选),项链的价值为所有珠子的 ...