oracle权限和角色的区别和联系是什么

如题所述

oracle权限和角色的区别为:性质不同、主要目的不同。权限和角色的联系当建立角色时,角色没有任何权限,为了使得角色完成特定任务,必须为其授予相应的系统权限和对象权限。 每一个角色可以拥有多个权限,同时一个权限也可以同时给多个角色拥有。

一、性质不同

1、权限:权限是指执行特定类型sql命令或是访问其它方案对象的权利。

2、角色:角色是相关权限的命令集合,是具有相同权限的用户的抽象实体。

二、主要目的不同

1、权限:权限的主要目的是为了约束用户的操作,不同用户需要有相应的权限,才可操作,提高oracle的安全性。

2、角色:角色的主要目的是为了简化权限的管理将一组具有相同权限的用户组织在一起,统一不同用户的使用。

扩展资料:

为了能初创oracle数据库系统,新建立的oracle数据库总是包含一个预定义的角色。 这个角色是"超级用户", 并且缺省时他和初始化该数据库集群的用户有相同的名称。 为了创建更多角色,必须首先以这个初始用户角色联接。

每一个和oracle数据库的连接都必须由一个角色身份进行, 这个角色决定在该连接上发出的命令的初始权限。和特定数据库联接的角色名是由初始化联接请求的应用以相关的方式声明。 

参考资料来源:

百度百科——Oracle数据库

百度百科——权限

百度百科——数据库角色

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-24
楼上:角色就是不同权限的集合!我也是这么理解的,就是说角色下可以有很多权限。
例如:角色可以是省长,市长,县长。而每个角色都有一些权限,可以管理县级,市级,省级事务。
一般创建用户以后,会给用户分配角色和一些权限。
GRANT CONNECT,RESOURCE TO user;
其中CONNECT是连接角色,RESOURCE是权限。本回答被网友采纳
第2个回答  2011-11-25
1 dba角色的权限很大,不要给普通用户。一般的用户,给:
grant connect,resource,unlimited tablespace to user1;
足够了。如果需要这个用户执行某些特别的包,比如DBMS_ADVISOR,再授权:
grant execute on dbms_advisor to user1;
对象权限主要是insert,select,delete,update,exec几种,关键是你允许人家干什么,就授权人家做什么就可以了。
3 如果加了:with admin,就是允许被授权者可以将得到的权限再授给别人。一般不要加上这样的授权语法。
这3个权限都比较多,如果打出来得半个小时吧,建议楼主去看下书,书上讲得比较详细。我说几个主要的
connect
alter session
create session
create table

resource
create table
create sequence
create cluster

dba
100多个:-(
第3个回答  2011-11-15
角色就好比是职位,权限就好比是职位里面的权力。在oracle里面不同的系统角色有默认的权限了,也可以用户自定义角色,可以为角色添加权限,当然也可以为个别用户授权,用户所在的角色的时候此用户就具备了改角色的权限,角色只是一堆权限的集合,而权限是执行能力,角色只是单纯的定义;试试定义角色授权就慢慢了解了
第4个回答  2011-11-15
这个其实要理解就很好说了:角色就是不同权限的集合!当然前提你要理解权限和角色!自己感觉把权限了解就可以了,在oracle中系统已经给你分配了很多权限,当然也有些常用的角色也给你分配了!