《Oracle的安全管理》PPT课件.ppt

上传人:san****019 文档编号:17289921 上传时间:2020-11-17 格式:PPT 页数:69 大小:380.10KB
返回 下载 相关 举报
《Oracle的安全管理》PPT课件.ppt_第1页
第1页 / 共69页
《Oracle的安全管理》PPT课件.ppt_第2页
第2页 / 共69页
《Oracle的安全管理》PPT课件.ppt_第3页
第3页 / 共69页
点击查看更多>>
资源描述
Oracle的安全 管理 本章学习目标 数据库安全性问题一直是人们关注的焦点, 数据库数据的丢失以及数据库被非法用户的侵 入对于任何一个应用系统来说都是至关重要的 问题。确保信息安全的重要基础在于数据库的 安全性能。 第六章 Oracle的安全管理 本章内容安排 6.1 Oracle9i的安全保障机制 6.2 用户管理 6.3 权限和角色 6.4 概要文件 6.5 数据审计 6.1 Oracle9i的安全保障机制 6.1.1 安全性内容 6.1.2 安全性策略 数据库的安全性 是指保护数据库以防止不合法的使用所造成的数据 泄露、更改或破坏。 在数据库存储这一级可采用密码技术,当物理存储设备失窃后,它 起到保密作用。在数据库系统这一级中提供两种控制:用户标识和鉴定, 数据存取控制。 数据库安全可分为二类:系统安全性和数据安全性。 系统安全性是指在系统级控制数据库的存取和使用的机制,包含: ( 1)有效的用户名 /口令的组合。 ( 2)一个用户是否授权可连接数据库。 ( 3)用户对象可用的磁盘空间的数量。 ( 4)用户的资源限制。 ( 5)数据库审计是否是有效的。 ( 6)用户可执行哪些系统操作。 6.1.1 安全性内容 在 Oracle多用户数据库系统中,安全机制作下列工作: ( 1)防止非授权的数据库存取。 ( 2)防止非授权的对模式对象的存取。 ( 3)控制磁盘使用。 ( 4)控制系统资源使用。 ( 5)审计用户动作。 用户要存取一对象必须有相应的权限授给该用户。已授权的用户可任意 地可将它授权给其它用户,由于这个原因,这种安全性类型叫做任意型。 Oracle利用下列机制管理数据库安全性: 数据库用户和模式 权限 角色 存储设置和空间份额 资源限制 审计 1 系统安全性策略 2用户安全性策略 6.1.2 安全性策略 3数据库管理者安全性策略 4应用程序开发者的安全性策略 1. 系统安全性策略 ( 1) 管理数据库用户 ( 2) 用户身份确认 ( 3) 操作系统安全性 1) 数据库管理员必须有 create和 delete文件的操作系统权限 。 2) 一般数据库用户不应该有 create或 delete与数据库相关文件的操作系 统权限 。 3) 如果操作系统能为数据库用户分配角色 , 那么安全性管理者必须有 修改操作系统帐户安全性区域的操作系统权限 。 2. 用户安全性策略 ( 1) 一般用户的安全性 1) 密码的安全性 2) 权限管理 ( 2) 终端用户的安全性 3. 数据库管理者安全性策略 ( 1) 保护作为 sys和 system用户的连接 ( 2) 保护管理者与数据库的连接 ( 3) 使用角色对管理者权限进行管理 4. 应用程序开发者的安全性策略 ( 1) 应用程序开发者和他们的权限 ( 2) 应用程序开发者的环境 1) 程序开发者不应与终端用户竞争数据库资源; 2) 程序开发者不能损害数据库其他应用产品 。 ( 3) 应用程序开发者的空间限制 作为数据库安全性管理者 , 应该特别地为每个应用程序开发者设置以下 的一些限制: 1) 开发者可以创建 table或 index的表空间; 2) 在每一个表空间中 , 开发者所拥有的空间份额 。 6.2.2 创建用户 6.2.3 修改用户 6.2.4 删除用户 6.2.1 数据库的存取控制 6.2 用户管理 1用户鉴别 2用户的表空间设置和定额 6.2.1 数据库的存取控制 3用户资源限制和环境文件 4用户环境文件 1. 用户鉴别 为了防止非授权的数据库用户的使用 , Oracle提供三种确认方法: 操作系统确认 , Oracle数据库确认和网络服务确认 。 由操作系统鉴定用户的优点是: 1) 用户能更快 , 更方便地联入数据库 。 2) 通过操作系统对用户身份确认进行集中控制:如果操作系统与数 据库用户信息一致 , 那么 Oracle无须存储和管理用户名以及密码 。 3) 用户进入数据库和操作系统审计信息一致 。 2 用户的表空间设置和定额 关于表空间的使用有几种设置选择: 用户的缺省表空间 用户的临时表空间 数据库表空间的空间使用定额 3. 用户资源限制和环境文件 用户可用的各种系统资源总量的限制是用户安全域的部分 。 利用显式地设置资源限制 , 安全管理员可防止用户无控制地 消耗宝贵的系统资源 。 资源限制是由环境文件管理 。 一个环 境文件是命名的一组赋给用户的资源限制 。 另外 Oracle为安 全管理员在数据库提供是否对环境文件资源限制的选择 。 Oracle可限制几种类型的系统资源的使用 , 每种资源可在 会话级 、 调用级或两者上控制 。 在会话级:每一次用户连接到一数据库,建立一会话。每 一个会话在执行 SQL语句的计算机上耗费 CPU时间和内存量进 行限制。 在调用级:在 SQL语句执行时,处理该语句有几步,为了 防止过多地调用系统, Oracle在调用级可设置几种资源限制。 有下列资源限制: ( 1)为了防止无控制地使用 CPU时间, Oracle可限制每次 Oracle调用 的 CPU时间和在一次会话期间 Oracle调用所使用的 CPU的时间,以 0.01秒 为单位。 ( 2)为了防止过多的 I/O, Oracle可限制每次调用和每次会话的逻辑 数据块读的数目。 ( 3) Oracle在会话级还提供其它几种资源限制。 每个用户的并行会话数的限制。 会话空闲时间的限制,如果一次会话的 Oracle调用之间时间达到该空 闲时间,当前事务被回滚,会话被中止,会话资源返回给系统。 每次会话可消逝时间的限制,如果一次会话期间超过可消逝时间的限 制,当前事务被回滚,会话被删除,该会话的资源被释放。 每次会话的专用 SGA空间量的限制。 4 用户环境文件 用户环境文件是指定资源限制的命名集 , 可赋给 Oracle数 据库的有效的用户 。 利用用户环境文件可容易地管理资源限 制 。 在许多情况中决定用户的环境文件的合适资源限制的最好 的方法是收集每种资源使用的历史信息 。 6.2.2 创建用户 使用 CREATE USER语句可以创建一个新的数据库用户, 执行该语句的用户必须具有 CREATE USER系统权限。 在创建用户时必须指定用户的认证方式。一般会通过 Oracle数据库对用户身份进行验证,即采用数据库认证方式。 在这种情况下,创建用户时必须为新用户指定一个口令,口 令以加密方式保存在数据库中。当用户连接数据库时, Oracle从数据库中提取口令来对用户的身份进行验证。 使用 IDENTIFIED BY子句为用户设置口令 , 这时用户将通过 数据库来进行身份认证 。 如果要通过操作系统来对用户进行身 份认证 , 则必须使用 IDENTIFIED EXTERNAL BY子句 。 使用 DEFAULT TABLESPACE子句为用户指定默认表空间 。 如果 没有指定默认表空间 , Oracle会把 SYSTEM表空间作为用户的默 认表空间 。 为用户指定了默认表空间之后 , 还必须使用 QUOTA 子句来为用户在默认表空间中分配的空间配额 。 此外 , 常用的一些子句有: TEMPORARY TABLESPACE子句:为用户指定临时表空间 。 PROFILE子句:为用户指定一个概要文件 。 如果没有为用户显式地指定概 要文件 , Oracle将自动为他指定 DEFAULT概要文件 。 DEFAULT ROLE子句:为用户指定默认的角色 。 PASSWORD EXPIRE子句:设置用户口令的初始状态为过期 。 ACCOUNT LOCK子句:设置用户账户的初始状态为锁定 , 缺省为: ACCOUNT UNLOCK。 在建立新用户之后 , 通常会需要使用 GRANT语句为他授予 CREATE SESSION系 统权限 , 使他具有连接到数据库中的能力 。 或为新用户直接授予 Oracle中预 定义的 CONNECT角色 。 6.2.3 修改用户 在创建用户之后,可以使用 ALTER USER语句对用 户进行修改,执行该语句的用户必须具有 ALTER USER 系统权限。 例如:利用下面的语句可以修改用户 chenjie的认证 方式、默认表空间、空间配额: ALTER USER chenjie IDENTIFIED BY chenjie_pw QUATA 10M ON mbl_tbs; ALTER USER语句最常用的情况是用来修改用户自 己 的 口 令 , 任 何 用 户 都 可 以 使 用 ALTER USER IDENTIFIED BY语句来修改自己的口令 , 而 不需要具有任何其他权限 。 但是如果要修改其他用 户的口令 , 则必须具有 ALTER USER系统权限 。 DBA还会经常使用 ALTER USER语句锁定或解锁用户 账户 。 例如: ALTER USER chenjie ACCOUNT LOCK; ALTER USER chenjie ACCOUNT UNLOCK; 6.2.4 删除用户 使用 DROP USER语句可以删除已有的用户,执 行该语句的用户必须具有 DROP USER系统权限。 如果用户当前正连接到数据库中,则不能删除这 个用户。要删除已连接的用户,首先必须使用 ALTER SYSTEMKILL SESSION 语句终止他的会 话,然后再使用 DROP USER语句将其删除。 如果要删除的用户模式中包含有模式对象,必须 在 DROP USER子句中指定 CASCADE关键字,否则 Oracle将返回错误信息。例如:利用下面的语句将删 除用户 chenjie,并且同时删除他所拥有的所有表、 索引等模式对象: DROP USER chenjie CASCADE; 6.3.2 创建角色 6.3.3 授予权限或角色 6.3.4 回收权限或角色 6.3.1 基本概念 6.3 权限和角色 6.3.5 激活和禁用角色 1权限 2角色 6.3.1 基本概念 1.权限 权限 是执行一种特殊类型的 SQL语句或存取另一用户的 对象的权力 。 有两类权限:系统权限和对象权限 。 1) 系统权限 :是执行一处特殊动作或者在对象类型上执行 一种特殊动作的权利 。 系统权限可授权给用户或角色 , 一般 , 系统权限只授予 管理人员和应用开发人员 , 终端用户不需要这些相关功能 。 2) 对象权限 :在指定的表 、 视图 、 序列 、 过程 、 函数或包 上执行特殊动作的权利 。 2.角色 为相关权限的命名组 , 可授权给用户和角色 。 数据库角 色包含下列功能: ( 1) 一个角色可授予系统权限或对象权限 。 ( 2) 一个角色可授权给其它角色 , 但不能循环授权 。 ( 3) 任何角色可授权给任何数据库用户 。 ( 4) 授权给用户的每一角色可以是可用的或者不可用 的 。 一个用户的安全域仅包含当前对该用户可用的全部角 色的权限 。 ( 5) 一个间接授权角色对用户可显式地使其可用或不 可用 。 在一个数据库中 , 每一个角色名必须唯一 。 角色名与用 户不同 , 角色不包含在任何模式中 , 所以建立角色的用户 被删除时不影响该角色 。 一般 , 建立角色服务有两个目的:为数据库应用管理权 限和为用户组管理权限 。 相应的角色称为应用角色和用户 角色 。 应用角色是授予的运行数据库应用所需的全部权限 。 用户角色是为具有公开权限需求的一组数据库用户而建 立的 。 用户权限管理是受应用角色或权限授权给用户角色 所控制 , 然后将用户角色授权给相应的用户 。 ORACEL利用角色更容易地进行权限管理 。 有下列优点: ( 1) 减少权限管理 , 不要显式地将同一权限组授权给 几个用户 , 只需将这权限组授给角色 , 然后将角色授权给 每一用户 。 ( 2) 动态权限管理 , 如果一组权限需要改变 , 只需修 改角色的权限 , 所有授给该角色的全部用户的安全域将自 动地反映对角色所作的修改 。 ( 3) 权限的选择可用性 , 授权给用户的角色可选择地 使其可用或不可用 。 ( 4) 应用可知性 , 当用户经用户名执行应用时 , 该数 据库应用可查询字典 , 将自动地选择使角色可用或不可用 。 ( 5) 应用安全性 , 角色使用可由口令保护 , 应用可提 供正确的口令使用角色 , 如不知其口令 , 不能使用角色 。 使用 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; 6.3.2 创建角色 在创建角色时必须为角色命名,新建角色的名称不能 与任何数据库用户或其他角色的名称相同。 与用户类似,角色也需要进行认证。在执行 CREATE ROLE语句创建角色时,默认地将使用 NOT IDENTIFIED 子句,即在激活和禁用角色时不需要进行认证。如果需要 确保角色的安全性,可以在创建角色时使用 IDENTIFIED 子句来设置角色的认证方式。与用户类似,角色也可以使 用两种方式进行认证。 使用 ALTER ROLE语句可以改变角色的口令或认证方 式。例如:利用下面的语句来修改 OPT_ROLE角色的口令 (假设角色使用的是数据库认证方式): ALTER ROLE OPT_ROLE IDENTIFIED BY accts*new; 1授予系统权限 2授予对象权限 6.3.3 授予权限或角色 3授予角色 1.授予系统权限 在 GRANT关键字之后指定系统权限的名称 , 然后在 TO 关键字之后指定接受权限的用户名 , 即可将系统权限授予 指定的用户 。 例如:利用下面的语句可以相关权限授予用户 chenjie: GRANT CREATE USER,ALTER USER,DROP USER TO chenjie WITH ADMIN OPTION; 2 授予对象权限 Oracle对象权限 指用户在指定的表上进行特殊操作的权利 。 在 GRANT关键字之后指定对象权限的名称 , 然后在 ON关 键字后指定对象名称 , 最后在 TO关键字之后指定接受权限 的用户名 , 即可将指定对象的对象权限授予指定的用户 。 使用一条 GRANT语句可以同时授予用户多个对象权限 , 各个权限名称之间用逗号分隔 。 有三类对象权限可以授予表或视图中的字段 , 它们是分 别是 INSERT, UPDATE和 REFERENCES对象权限 。 例如:利用下面的语句可以将 CUSTOMER表的 SELECT和 INSERT, UPDATE对象权限授予用户 chenqian: GRANT SELECT,INSERT(CUSTOMER_ID,CUSTOMER_name), UPDATE(desc) ON CUSTOMER TO chenqian WITH GRANT OPTION; 在授予对象权限时 , 可以使用一次关键字 ALL或 ALL PRIVILEGES将某个对象的所有对象权限全部授予指定的用 户 。 3 授予角色 在 GRANT关键字之后指定角色的名称 , 然后在 TO关键 字之后指定用户名 , 即可将角色授予指定的用户 。 Oracle数 据库系统预先定义了 CONNECT、 RESOURCE、 DBA、 EXP_FULL_DATABASE 、 IMP_FULL_DATABASE 五个角 色 。 CONNECT 具 有 创 建 表 、 视图 、 序列等权限; RESOURCE具有创建过程 、 触发器 、 表 、 序列等权限 、 DBA 具 有 全 部 系 统 权 限 ; EXP_FULL_DATABASE 、 IMP_FULL_DATABASE具有卸出与装入数据库的权限 。 通过查询 sys.dba_sys_privs可以了解每种角色拥有的权利 。 例如:利用下面的语句可以将 DBA角色授予用户 chenjie: GRANT DBA TO chenjie WITH GRANT OPTION; 在同一条 GRANT语句中 , 可以同时为用户授予系统权限和角 色 。 如果在为某个用户授予角色时使用了 WITH ADMIN OPTION选项 , 该用户将具有如下权利: ( 1) 将这个角色授予其他用户 , 使用或不使用 WITH ADMIN OPTION选项 。 ( 2) 从任何具有这个角色的用户那里回收该角色 。 ( 3) 删除或修改这个角色 。 注意: 不能使用一条 GRANT语句同时为用户授予对象权限 和角色 。 使用 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; 6.3.4 回收权限或角色 在回收对象权限时,可以使用关键字 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; 6.3.5 激活和禁用角色 在用户会话的过程中,还可以使用 SET ROLE语句来激活 或禁用他所拥有的角色。用户所同时激活的最大角色数目由 初始化参数 ENABLED ROLES决定(默认值为 20)。如果角 色在创建时使用了 IDENTIFIED BY子句,则在使用 SET ROLE语句激活角色时也需要在 IDENTIFIED BY子句中提供 口令。 如果要激活用户所拥有的所有角色,可以使用下面的语句: SET ROLE ALL; 6.4.2 激活和禁用资源限制 6.4.3 管理概要文件 6.4.1 概要文件中的参数 6.4 概要文件 1资源限制参数 2口令策略参数 6.4.1 概要文件中的参数 1 资源限制参数 资源参数的值可以是一个整数 , 也可以是 UNLIMITED或 DEFAULT 即使用默认概要文件中的参数设置 。 大部分资源限制都可以在两个级别进行:会话级或调用级 。 会话 级资源限制是对用户在一个会话过程中所能使用的资源进行的限制 , 而 调用级资源限制是对一条 SQL语句在执行过程中所能使用的资源进行的 限制 。 当会话或一条 SQL语句占用的资源超过概要文件中的限制时 , Oracle将中止并回退当前的操作 , 然后向用户返回错误信息 。 这时用户 仍然有机会提交或回退当前的事务 。 如果受到的是会话级限制 , 在提交 或回退事务后用户会话被中止 ( 断开连接 ) , 但是如果受到的是调用级 限制 , 用户会话还能够继续进行 , 只是当前执行的 SQL语句被终止 。 以下为概要文件中使用的各种资源参数: SESSIONS_PER_USER:该参数限制每个用户所允许 建立的最大并发会话数目 。 达到这个限制时 , 用户不能再 建立任何数据库连接 。 CPU_PER_SESSION:该参数限制每个会话所能使用 的 CPU时间 。 CPU_PER_CALL:该参数限制每条 SQL语句所能使 用的 CPU时间 。 LAGICAL_READS_PER_SESSION:该参数限制每个 会话所能读取的数据块数目 , 包括从内存中读取的数据块 和从硬盘中读取的数据块 。 LAGICAL_READS_PER_CALL:该参数限制每条 SQL语句所能 读取的数据块数目 , 包括从内存中读取的数据块和从硬盘中读取的数据 块 。 CONNECT_TIME:该参数限制每个会话能连接到数据库的最长 时间 。 当连接时间达到该参数的限制时 , .用户会话将自动断开 。 IDLE_TIME:该参数限制每个会话所允许的最大连续空闲时间 。 如果一个会话持续的空闲时间达到该参数的限制 , 该会话将自动断开 。 COMPOSITE_LIMIT:该参数用于设置 “ 组合资源限制 ” 。 PRIVATE_SGA:在共享服务器操作模式下 , 执行 SQL语句和 PL/SQL语句时 , Oracle将在 SGA中创建私有 SQL区 。 该参数限制在 SGA 中为每个会话所能分配的最大私有 SQL区大小 。 在专用服务器操作模式 下 , 该参数不起作用 。 2 口令策略参数 使用概要文件可以实现如下三种口令策略: ( 1) 账户的锁定 账户锁定策略是指用户在连续输入多少次错误的口令后 , 将由 Oracle自动锁定用户的账户 , 并且可以设置账户锁定的时 间 。 ( 2) 口令的过期时间 口令过期策略用于强制用户定期修改自己的口令 。 当口令 过期后 , Oracle将随时提醒用户修改口令 。 如果用户仍然不修 改自己的口令 , Oracle将使他的口令失效 。 ( 3) 口令的复杂度 在概要文件中可以通过指定的函数来强制用户的口令必须 具有一定的复杂度 。 以下为在概要文件中使用的各种口令参数: FAILED_LOGIN_ATTEMPTS:该参数指定允许的输入错误 口令的次数 , 超过该次数后用户账户被自动锁定 。 PASSWORD_LOCK_TIME:该参数指定用户账户由于口令输 入错误而被锁定后 , 持续保持锁定状态的时间 。 PASSWORD_LIFE_TIME:该参数指定同一个用户口令可以 持续使用的时间 。 如果在达到这个限制之前用户还没有更换 另外一个口令 , 他的口令将失效 。 这时必须由 DBA为他重新设 置新的口令 。 PASSWORD_GRACE_TIME:该参数指定用户口令过期的时 间 。 如果在达到这个限制之前用户还没有更换另外一个口令 , Oracle将对他提出警告 。 在口令过期之后 , 用户在达到 PASSWORD_LIFE_TIME参数的限制之前有机会主动修改口令 。 PASSWORD_REUSE_TIME:该参数指定用户在能够重复使 用一个口令前必须经过的时间 。 PASSWORD_REUSE_MAX:该参数指定用户在能够重复使用 一 个 口 令 之 前 必 须 对 口 令 进 行 修 改 的 次 数 。 PASSWORD_REUSE_TIME参数和 PASSWORD_REUSE_MAX参数只能设 置一个 , 而另一个参数必须指定为 UNLIMITED。 PASSWORD_VERIFY_FUNCTION:该参数指定用于验证用户 口令复杂度的函数 。 Oracle通过一个内置脚本提供了一个默 认函数用于验证用户口令的复杂度 , 所有指定时间的口令参数都以天为单位 。 修改数据库的资源限制状态有两种方式: 在数据库启动之前,可以通过设置初始化参数 RESOURCE_LIMIT来决定资源限制的状态。如果 RESOURCE LIMIT参数设置为 TRUE,启动数据库后资源限制将处于激活 状态;反之如果 RESOURCE LIMIT参数设置为 FALSE,启动 数据库后资源限制将处于禁用状态。默认情况下, RESOURCE_LIMIT参数为 FALSE。 在数据库启动之后(处于打开状态),可以使用 ALTER SYSTEM语句来改变资源限制的状态,执行该语句的用户必须 具有 ALTER SYSTEM系统权限。 6.4.2 激活和禁用资源限制 例如:利用下面的语句可以将资源限制由禁用状态切换到 激活状态: ALTER SYSTEM SET RESOURCE_LIMIT= TRUE; 如果在数据库中使用了服务器端初始化参数文件 ( SPFILE),在使用 ALTER SYSTEM语句改变资源限制 的状态时,可以选择在初始化参数文件中修改记录(默认 的 ALTER SYSTEM语句将使用 SCOPE=BOTH子句),这 样在下一次启动数据库时修改仍然有效。 1创建概要文件 2修改概要文件 6.4.3 管理概要文件 3删除概要文件 4指定概要文件 5设置组合资源限制 1 创建概要文件 使用 CREATE PROFILE语句可以创建概要文件 , 执行该 语句的用户必须具有 CREATE PROFILE系统权限 。 DBA可以根据需要使用下面的语句来修改 DEFAULT概 要文件中的参数设置: ALTER PROFILE DEFAULT LIMIT .; 要修改 DEFAULT 概要文件 , 用户必须具有 ALTER PROFILE系统权限 。 任何用户都不能删除 DEFAULT概要文 件 。 2 修改概要文件 概要文件在创建之后 , 可以使用 ALTER PROFILE语句 来修改其中的资源参数和口令参数 , 执行该语句的用户必 须具有 ALTER PROFILE系统权限 。 例如:利用下面的语句对概要文件 ACCOUNTING_USER进行修改: ALTER PROFILE ACCOUNTING USER LIMIT CPU_PER_CALL DEFAULT LOGICAL_READS_PER_SESSION 2000000; 3 删除概要文件 使用 DROP PROFILE语句可以删除概要文件 , 执行该语 句的用户必须具有 DROP PROFILE系统权限 。 如果要删除 的概要文件已经指定给了用户 , 则必须在 DROP PROFILE 语句中使用 CASCADE关键字 。 例如:利用下面的语句可以删除 ACCOUNTING_USER 概要文件: DROP PROFILE ACCOUNTING_USER CASCADE; 如果为用户所指定的概要文件己经被删除 , Oracle将自 动为用户重新指定 DEFAULT概要文件 。 4 指定概要文件 在使用 CREATE USER语句创建用户时 , 可以通过 PROFILE子句为新建用户指定概要文件 。 另外 , 在使用 ALTER USER语句修改用户时也可以为他指定概要文件 。 例如:利用下面的语句可以将概要文件 ACCOUNTING USER指定给用户 JACK: ALTER USER JACK PROFILE ACCOUNTING_USER; 5 设置组合资源限制 在创建概要文件时通过 COMPOSITE LIMIT子句来指定 资源总限额 。 例如:利用下面的语句创建的概要文件中将资源总限额 设置为 20000: CREATE PROFILE clerk LIMIT COMPOSITE_LIMIT 20000 SESSIONS_PER_USER 2 CPU_PER_CALL 1000; 注意 :在一个概要文件中设置的资源总限额和单独资 源限制是同时起作用的 。 当会话所占用的资源达到其中一 个限制时 , 会话将被终止 。 如果没有在概要文件中显式地 设置资源总限额 , 默认的总限额值为 0, 这时组合资源限制 不会起作用 。 6.5.2 审计的使用 6.5.1 审计的功能 6.5 数据审计 6.5.1 审计的功能 审计是对选定的用户动作的监控和记录,通常用于: ( 1)审查可疑的活动。例如:数据被非授权用户所删除, 此时安全管理员可决定对该数据库的所有连接进行审计,以 及对数据库的所有表的成功地或不成功地删除进行审计。 ( 2)监视和收集关于指定数据库活动的数据。 Oracle支持三种审计类型: 语句审计 , 对某种类型的 SQL语句审计 , 不指定结构或 对象 。 权限审计 , 对执行相应动作的系统权限的使用审计 。 对象审计 , 对一特殊模式对象上的指定语句的审计 。 Oracle所允许的审计选择限于下列方面: 审计语句的成功执行、不成功执行,或者其两者。 对每一用户会话审计语句执行一次或者对语句每次执行 审计一次。 对全部用户或指定用户的活动的审计。 1审计登录 2审计数据库操作 6.5.2 审计的使用 3审计数据库对象上的 DML 1 审计登录 AUDIT ANY 特权是发出审计命令所必须的 。 AUDIT SESSION 完成审计登录 。 可以用来对所有成功 和不成功的与数据库建立连接的尝试进行审计 。 AUDIT SESSION WHENEVER NOT SUCCESSFUL 仅 审计不成功的尝试 。 AUDIT SESSION WHENEVER SUCCESSFUL 仅审计成 功的尝试 。 如果审计数据存储在 SYS.AUD$表中 , 可以生成审计报表 。 使用 DBA _AUDIT_SESSION视图报告登录 。 2 审计数据库操作 通过审计数据库操作 , 可以在语句和系统特权级上进 行审计 , 而不必考虑具体的数据库对象 。 AUDIT语句的审计 功能特性能够审计不止一条 SQL语句 。 例如 , 使用审计语句 ROLE审计 SQL语句 CREATE ROLE、 ALTER ROLE、 SET ROLE和 DROP ROLE。 要审计系统特权 , 必须指定该特权 。 系统特权 ALTER DATABASE不包含在语句审计选项中 , 但是 仍然可以审计它 , 因为它是一个系统特权 。 有些语句审计选 项使用与系统特权相同的名称 。 可以把 AUDIT语句用于用户 、 会话或存取 。 可以进一步地定义它以便仅对成功或不成功的 语句进行审计 。 3 审计数据库对象上的 DML 可以使用如下语法审计一个具体的模式对象: AUDIT obj_opt ON schema.object BY SESSION/ACCESS WHENEVER NOT/SUCCESSFUL; 也可以指定一个对象选项 ( 例如插入或更新 ) 或者使用关 键字 ALL来指定所有的对象选项 。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!