用户权限是最基本的数据库安全控制。其作用就是控制用户对数据的访问,sql语句的执行。当oracle用户创建的时候,可以通过授权来控制用户对数据的连接,数据库对象的操作等等。
在oracle中,分为两种权限。
1.系统权限(system privileges):系统权限用来执行某些特定的操作,属于比较高的权限,一般是数据库系统级别,一般用户数据库的管理,能够对一些特定的数据库对象进行操作。
2.对象权限(Object privileges):对象权限允许用户在特定schema对象上进行操作,比如表的增删改查权限。
?
oracle数据库中预定义的角色:
oracle数据从创建开始就有一些预定义的角色,下面就是oracle数据中预定义的三种角色。
|
名称
描述
CONNECT
该权限用来允许用户连接数据库。当创建一个用户时会默认赋予该角色。
RESOURCE
该权限允许用户create,modify,delete和用户相关联的schema中的object,通常将该权限授予应用程序开发人员或者需要创建schema object的人,比如创建表。
该角色还具有部分系统权限,比如create table权限,但是没有create view权限,该角色默认拥有的系统权限有:CREATE
?CLUSTER
,?CREATE
INDEXTYPE
,?CREATE
?OPERATOR
,?CREATE
?PROCEDURE
,?CREATE
SEQUENCE
,?CREATE
?TABLE
,?CREATE
?TRIGGER
,?CREATE
?TYPE
.
DBA
管理员权限,允许用户能执行大多管理员操作。比如create user和用户授权操作,创建和授予角色。对任何schema中的对象进行create,modify,delete操作。简而言之,
DBA角色拥有所有的系统权限,但是没有启动和停止数据库实例(database instance)的权限。启动和停止数据库实例的权限默认被授予了用户SYS和SYSTEM