文档详情

第五章Oracle的用户和权限管理详解.ppt

发布:2017-04-17约2.22千字共53页下载文档
文本预览下载声明
Oracle的用户和权限管理;本章学习目标 数据库安全性问题一直是人们关注的焦点,数据库数据的丢失以及数据库被非法用户的侵入对于任何一个应用系统来说都是至关重要的问题。确保信息安全的重要基础在于数据库的安全性能。;本章内容安排; 5.1.2 创建用户 ;;;;;;;;;;;;;;;;5.2.2 创建角色 ;;;;;;使用CREATE ROLE语句可以创建一个新的角色,执行该语句的用户必须具有CREATE ROLE系统权限。 在角色刚刚创建时,它并不具有任何权限,这时的角色是没有用处的。因此,在创建角色之后,通常会立即为它授予权限。例如:利用下面的语句创建了一个名为OPT_ROLE的角色,并且为它授予了一些对象权限和系统权限: CREATE ROLE OPT_ROLE; GRANT SELECT ON sal_history TO OPT_ROLE; GRANT INSERT,UPDATE ON mount_entry TO OPT_ROLE; GRANT CREATE VIEW TO OPT_ROLE;;在创建角色时必须为角色命名,新建角色的名称不能与任何数据库用户或其他角色的名称相同。 与用户类似,角色也需要进行认证。在执行CREATE ROLE语句创建角色时,默认地将使用NOT IDENTIFIED子句,即在激活和禁用角色时不需要进行认证。如果需要确保角色的安全性,可以在创建角色时使用IDENTIFIED子句来设置角色的认证方式。与用户类似,角色也可以使用两种方式进行认证。 使用ALTER ROLE语句可以改变角色的口令或认证方式。例如:利用下面的语句来修改OPT_ROLE角色的口令(假设角色使用的是数据库认证方式): ALTER ROLE OPT_ROLE IDENTIFIED BY accts*new;;;;;;;; 使用REVOKE语句可以回收己经授予用户(或角色)的系统权限、对象权限与角色,执行回收权限操作的用户同时必须具有授予相同权限的能力。 例如:利用下面的语句可以回收已经授予用户chenqian的SELECT和UPDATE对象权限: REVOKE SELECT,UPDATE ON CUSTOMER FROM chenqian; 利用下面的语句可以回收已经授予用户chenjie的CREATE ANY TABLE系统权限: REVOKE CREATE ANY TABLE FROM chenjie; 利用下面的语句可以回收己经授予用户chenjie的OPT_ROLE角色: REVOKE OPT_ROLE FROM chenjie;;在回收对象权限时,可以使用关键字ALL或ALL PRIVILEGES将某个对象的所有对象权限全部回收。 例如:利用下面的语句可以回收己经授予用户chenqian的CUSTOMER表的所有对象???限: REVOKE ALL ON CUSTOMER FROM chenjie;; 一个用户可以同时被授予多个角色,但是并不是所有的这些角色都同时起作用。角色可以处于两种状态:激活状态或禁用状态,禁用状态的角色所具有权限并不生效。 当用户连接到数据库中时,只有他的默认角色(Default Role)处于激活状态。在ALTER USER角色中使用DEFAULT ROLE子句可以改变用户的默认角色。 例如:如果要将用户所拥有的一个角色设置为默认角色,可以使用下面的语句: ALTER USER chenjie DEFAULT ROLE connect,OPT_ROLE;; 在用户会话的过程中,还可以使用SET ROLE语句来激活或禁用他所拥有的角色。用户所同时激活的最大角色数目由初始化参数ENABLED ROLES决定(默认值为30)。如果角色在创建时使用了IDENTIFIED BY子句,则在使用SET ROLE语句激活角色时也需要在IDENTIFIED BY子句中提供口令。 如果要激活用户所拥有的所有角色,可以使用下面的语句: SET ROLE ALL;; 5.3.2 激活和禁用资源限制 ;;;;;;;;修改数据库的资源限制状态有两种方式: 在数据库启动之前,可以通过设置初始化参数RESOURCE_LIMIT来决定资源限制的状态。如果RESOURCE LIMIT参数设置为TRUE,启动数据库后资源限制将处于激活状态;反之如果RESOURCE LIMIT参数设置为FALSE,启动数据库后资源限制将处于禁用状态。默认情况下,RESOURCE_LIMIT参数为FALSE。 在数据库启动之后(处于打开状态),可以使用ALTER SYSTEM语句来改变资源限制的状态,执行该语句的用户必须具有ALTER SYSTEM系
显示全部
相似文档