Oracle审计手册_第1页
Oracle审计手册_第2页
Oracle审计手册_第3页
Oracle审计手册_第4页
Oracle审计手册_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、节标题 页介绍2A特定现场的Oracle环境3B密码管理6COracle系统安全12D操作系统安全18E日常的批次作业22F系统和对象审计24G备份策略27H数据库联网30I完整性和性能321、介绍和概述这个审计程序包含了一套在复审Oracle数据库环境时可以执行的审计测试。这个审计程序可以独立使用,然而,它应该和Oracle审计软件OraAudit联合使用。这些在OraAudit内生成的审计测试,或插件,一直以来都用对应的Oracle审计程序参考号来引用。这个审计软件的使用指南可以在相关的帮助文件Oraaudit_Help_index.htm中找到。这个程序内的审计测试,在能用到的地方,是作

2、为审计程序的输出而被引用的。 在尽力维持审计程序的全面性和可行性的同时,审计师应该在执行每一个审计测试时,运用他们自己的判断力和创造性。有了这一认识,归档的审计测试就会得到持续的完善,也会获得审计程序和软件的定期修订。Ref. No.Audit TestAudit FindingsTest OK? Y / NCompleted by: InitialsX-Ref: Work PapersX-Ref: OraAudit PluginsAA001A002A003A004A005A006A008A009A010特定现场的Oracle环境审计目标通过复审和与DBA面谈,来理解现场的Oracle处理环境

3、。确定重要的数据库应用系统,数据仓库,管理信息系统,Web应用和其他使用数据库系统的关键业务系统。提供主机系统和客户/服务器(C/S)处理环境的文档,例如:a) 以主机为中心的应用:建立在单个数据库服务器上,用户通过操作系统(telnet)登录;b) 两层的C/S环境:客户端的应用处理在PC上(胖客户端),用户通过客户端Oracle网络访问程序登录;c) 三层的C/S环境:应用处理逻辑装载在应用服务器上,与数据库服务器和PC机(瘦客户端)相分离,用户通过应用程序专门的网络访问程序登录。记录使用的每一个数据库应用,实用工具,或管理程序。确定Oracle服务器所安装的操作系统。确定Oracle服务

4、器所使用的版本和产品。核查Oracle数据库的逻辑数据和处理模式是否记录进适当的手册中。通过DBA执行SHOW PARAMETERS命令来获得Oracle目前的参数。Oracle建议客户实施数据字典保护,以防止有ANY系统权限的用户对数据字典使用这样的权限。为了使数据字典保护有效,在init<sid>.ora(Oracle9i控制文件)中如下设置:O7_DICTIONARY_ACCESSIBILITY = FALSE注解:这样做了以后,只有那些授权成DBA权限的用户(例如CONNECT /AS SYSDBA)的连接才可以对数据字典使用ANY权限。如果这个参数不象建议的这样设,一个拥

5、有DROP ANY TABLE(例如)的用户就有能力故意丢弃数据字典的一部分。然而,如果用户需要对数据字典作视图访问,可以通过赋给它SELECT ANY DICTIONARY权限来实现。注意在Oracle9i,O7_DICTIONARY_ACCESSIBILITY=FASE是缺省的;而在Oracle8i,这个参数缺省设为TRUE,因而必须明确地将其改为FALSE以启用这一安全特性。核查用于检查系统中所有软件具有有效许可证的流程是否到位。特别是,LICENSE_MAX_SESSIONS或LICENSE_MAX_USERS应该设置成将连接到数据库的并发会话/用户限制在许可证协议所指定的限额之内。注

6、解:值0表示没有启用内部控制,因此会允许无限制的会话/用户连接到数据库。A005A008A009A010Ref. No.Audit TestAudit FindingsTest OK? Y / NCompleted by: InitialsX-Ref: Work PapersX-Ref: OraAudit PluginsBB001B002B003B004B005B006B007B008B009B010B011B012密码管理审计目标核查口令管理策略是否实施,以保证数据通过认证得到很好的保护。核查在Oracle环境中与口令管理相关的标准是否已经建立,并已写入相应的手册中。核查在Oracle中,对

7、于用户帐号和组的建立和维护,是否有足够的授权程序。从安全官员那里获得系统的视图DBA_USERS和DBA_PROFILES。通过复审系统视图DBA_USERS和DBA_PROFILES,核查每一用户特性(profile)的参数,以确保他们按照安全标准设置:a) IDLE_TIME 限定在一个会话自动退出前的持续非活动时间。(建议的值: 15分钟);b) FAILED_LOGIN_ATTEMPTS 在用户帐号锁定前,允许登录到用户帐号的不成功尝试的次数。(建议值:3);c) PASSWORD_LIFE_TIME 同一密码可以用于认证的天数,在这之后密码必须改变。(建议值:30天);d) PASS

8、WORD_REUSE_TIME 一个密码不能重新启用的间隔天数。(建议值:如果Password_reuse_max设置成12,则PASSWORD_REUSE_TIME设置为无限期,否则,PASSWORD_REUSE_TIME应设置为365而Password_reuse_max应该设为无限期,请见下面的注释);e) PASSWORD_REUSE_MAX 在一个密码重新启用前,密码改变的次数。(建议值:如果Password_reuse_time设置成365,则 PASSWORD_REUSE_MAX设置为无限期,否则,PASSWORD_REUSE_MAX设置为12而Password_reuse_ti

9、me应该设置为无限期,请见下面的注释;f) PASSWORD_VERIFY_FUNCTION PL/SQL口令复杂性验证脚本的名称;g) PASSWORD_LOCK_TIME 在确定的不成功登录尝试后,用户帐号被锁住的天数。(建议值:无限期);h) PASSWORD_GRACE_TIME 宽限期的天数,在这段时间内,登录时会有警告信息但登录还可以继续。(建议值:5天);i) CPU_PER_SESSION 每个会话的CPU时间限制。(建议值:取决于应用的情况,但不应该设为无限制UNLIMITED)。注解:下面是应该注意的事项:l 任何没有被明确指定用户特性(profile)的用户将遵从DEFA

10、ULT特性( profile)定义的各项限制。此外,如果明确指定给一个用户的用户特性(profile),忽略了对某些资源的限制,或者将某些限制指定为缺省,那么用户应遵从DEFAULT特性中对那些资源所定义的限制。l 更多的参数信息,请参考Oracle8 Server SQL Reference。l 口令参数的限制(见Oracle文档):l 如果PASSWORD_REUSE_TIME设置成一个整数值,PASSWORD_REUSE_MAX必须设置成无限制UNLIMITED。如果PASSWORD_REUSE_MAX设置成整数值,PASSWORD_REUSE_TIME必须设置成无限制UNLIMITED

11、。l 如果PASSWORD_REUSE_TIME和PASSWORD_REUSE_MAX都设置成无限制,则Oracle不会使用这些口令资源中的任何一个。l 如果PASSWORD_REUSE_MAX设置成DEFAULT,而PASSWORD_REUSE_TIME设置成无限制,则Oracle使用DEFAULT 特性(profile)中定义的PASSWORD_REUSE_MAX的值。l 如果PASSWORD_REUSE_TIME 设置成DEFAULT,而PASSWORD_REUSE_MAX设置成无限制,则Oracle使用DEFAULT 特性(profile)中定义的PASSWORD_REUSE_TIME

12、 的值。l 如果PASSWORD_REUSE_TIME和PASSWORD_REUSE_MAX都设置成DEFAULT,则Oracle使用定义在DEFAULT 特性(profile)中的任何一个值。通过复审下列视图:DBA_USERS和DBA_PROFILES,核查是否每个用户都已被指定了一个唯一的数据库特性(profile)。从安全官员处取得一份PL/SQL密码复杂性验证脚本的拷贝(象上面在B004-f 中确定的那样)。确保通过脚本执行了如下核查:a) 口令长度至少是6个字符;b) 口令不能与相关的用户ID相同;c) 口令应由字符和数字组合而成;d) 无论密码如何改变,至少有3个字符与上次的口令

13、不同。确定安装的缺省密码是否已改变。通过确认以下设置,来核查在客户端和服务器端都配置成在登录时对传输的密码进行加密:a) 在客户端机器,ORA_ENCRYPT_LOGIN环境变量设置成TRUE;b) 服务器初始化参数dblink_encrypt_login 设置为TRUE。检查确定只有sys和system帐号使用system表空间作为它们缺省的表空间,而对于其他用户,缺省表空间参数应设置为user表空间。注解:其它用户使用SYSTEM之外的表空间,可以减少数据字典对象与用户对象使用同一个数据文件的冲突。通常,不建议用户数据放在SYSTEM表空间上,以避免使SYSTEM表空间散乱的危险,和导致数

14、据库面临潜在问题的风险。要优先保持SYSTEM表空间干净,无碎片且使其免受伤害。确保只有sys帐号把system作为临时表空间,所有其他用户应该将temp表空间作为他们的临时表空间。注解:如果用户的临时表空间没有明确设置,用户被指定使用在数据库创立时指定的缺省临时表空间,或在后来用ALTER DATABASE命令指定的临时表空间。如果没有缺省的临时表空间,缺省的临时表空间就是SYSTEM。就像之前所讨论的用户缺省表空间,不建议把用户数据存在SYSTEM 表空间。另外,指定一个表空间为临时表空间也减少了临时段和其他类型段之间的文件冲突。确保所有不成功的登录尝试都有记录,会进行复审和跟进

15、。基于安全原因,确认是否已禁用“SYS”和“SYSTEM”帐号。注解:这两个Oracle系统帐号各自用于系统维护和数据库管理。按照Oracle安全手册,SYS是整个数据库最有威力的用户,并拥有所有内部对象,而SYSTEM则是执行大部分对象建立时的初始帐号。一旦完成数据库初始建立,这些帐号建议不再使用。B004B005B007B009B010B011B012Ref. No.Audit TestAudit FindingsTest OK? Y / NCompleted by: InitialsX-Ref: Work PapersX-Ref: OraAudit PluginsCC001C002C00

16、3C004C005C006C007C008C009C010C011C012C013C014Oracle系统安全审计目标确保所有定义在Oracle数据库中的用户是适当的和合法的,其数据库权限与业务要求一致,并且遵循适当的口令控制。确保数据有足够防护来自业务应用用户的直接访问。提供文件来证明在应用设计中采取了防止对数据库对象获得直接访问的战略。注解:依赖所支持的应用的特性和所要求的安全级别,在Oracle中实施的安全策略可以有很大的不同。应用和Oracle 安全系统之间的相互影响可以分为4种不同的模式:l 完全依靠Oracle安全系统 用这种方式的应用没有独立的安全系统,完全依靠数据库的

17、安全控制。用户在登录时提供的安全信息,用于在数据库中打开一个会话,或认证一个独立的动作。这类应用通常用Oracle 4GL(例如,Oracle Financial)开发;l 依靠Oracle安全系统用于用户认证 应用依靠一个并行的安全系统来控制用户的权限。读写特定表的权限可以赋给所有应用的用户,而读或写数据的交易由应用安全系统进行限制。在这种境况下,直接访问数据库是数据完整性很严重的问题,因为用户可以绕过应用安全控制去读或修改数据;l 依靠Oracle安全系统执行对数据库对象权限的授权 大部分Web应用采用这种方式获得保护,由于它在Oracle中设置和管理用户帐号是不现实的。用户通过应用的并行

18、安全系统进行认证,与数据库的交互是通过一个标准帐号来认证;l 独立于Oracle安全系统 这最后一个安全类别是复杂应用的一个特例,包含架构独立的应用,如SAP R/3。从安全官员处取得下列系统视图:a) DBA_USERS 列示数据库中建立的所有用户;b) DBA_ROLES 列示数据库中建立的所有角色;c) DBA_ROLE_PRIVS 列示赋给用户和其他角色的角色;d) DBA_SYS_PRIVS 列示赋给用户和角色的系统权限;e) DBA_TAB_PRIVS 列示赋给用户和角色的对象权限(不包含列特定权限);f) DBA_COL_PRIVS 列示赋给用户和角色的列特定权限。从节C002获

19、得的系统视图文档(也就是,DBA_USERS, DBA_SYS_PRIVS, DBA_ROLE_PRIVS),建立一个什么系统权限被赋给每个用户的表格,并评估每个系统权限赋予的适当性。从节C002获得的系统视图文档(也就是,DBA_USERS, DBA_TAB_PRIVS,,DBA_COL_PRIVS, DBA_ROLE_PRIVS),建立一个什么对象权限被赋给每个用户的表格,并评估每个对象权限赋予的适当性。通过相关手册指引并与安全官员讨论,确定每个角色和用户名的目的,特别是那些有很强权限的角色和用户名。确定那些帐号的所有者,并查明这些权限的赋予是否适当。在Oracle中,一个角色可以再赋予给

20、别的角色。这种灵活性也可能导致权限管理的困难。与安全官员一起核查以查明实施了多少层角色的指定。抽样检查用户帐号维护表格。确定Oracle用户帐号维护的标准和流程。业务用户不应该赋予除了直接SELECT表或视图之外的其他对象权限,因为这可能允许绕过要求的应用控制:a) 只有SELECT 权限可以直接赋给用户和角色。别的对象权限应该通过存储过程实现。b) 对于PROCEDURE对象,应该只有SELECT 和 EXECUTE权限赋给一般用户。注解:下面是要注意的一些事项:l 一个过程是一个模式对象,由一组SQL语句和PL/SQL结构组成,存储在数据库中,作为一个单位执行,以解决一个特定的问题或执行一

21、组相关的任务;l 存储过程能有助于加强数据安全。你可以通过只允许用户通过过程来访问数据来限制用户可以执行的数据库操作。例如,你可以赋权给一个用户可以访问一个修改表的过程,但不赋权给它访问表本身。当一个用户调用过程时,这个过程用过程所有者的权限执行。只有执行过程的权限的用户(但没有权力去查询,修改,或删除表)能执行过程,但他们不能用任何别的方式来操作表的数据。具有破坏性权限的角色(如在用户模式对象上删除,修改等)在建立时应该有密码以便认证。核查DBA_ROLES以便查明是否为那些特殊角色设置密码,并保证那些角色没有被定义为缺省角色。注解:下面是要注意的一些事项:l 当一个用户首次建立时,用户缺省

22、的角色设置是ALL,这样所有后续赋给用户的角色就会是缺省角色;l 如果一个角色定义为用户的缺省角色,即使角色本身有密码相关,在使用这个角色时也不会要求提供密码。从在节C002取得的系统视图文档(也就是,DBA_SYS_PRIVS和DBA_ROLE_PRIVS),核查所有被授予系统权限或角色的被授予者,没有将ADM设置为YES。注解:为了赋权一个角色或系统权限,授权者应该分别拥有GRANT ANY ROLE或GRANT ANY PRIVILEGE的系统权限,或被授予的角色或系统权限的ADMIN选项。从在节C002取得的系统视图文档(也就是,DBA_TAB_PRIVS和DBA_COL_PRIVS)

23、,核查只有负责权限管理的安全官员,将对象权限GRANTABLE设置为YES。注解:为了赋权一个对象权限,授权者应该要么是对象所有者,要么是被授予了将GRANTABLE设置为YES的对象权限。从在节C002取得的系统视图文档(也就是,DBA_ROLE_PRIVS,DBA_SYS_PRIVS,DBA_TAB_PRIVS和DBA_COL_PRIVS),确定那些已经赋给PUBLIC的角色和权限。复审这些赋权是否恰当。注解:通常而言,只有某几个表或视图的SELECT权限可以被赋权给PUBLIC。从DBA取得系统视图DBA_TS_QUOTAS,与DBA讨论赋给每一个用户的表空间资源是否适当。注解:验证引入

24、配额是非常重要的,其实际值取决于本地环境。适当的配额可以节省分配给每一个表空间和个别用户请求的物理空间的总的大小。核查Oracle Listener建立了密码以防止未经授权的远程配置。另外,以下列方式核查listener.ora(Oracle Listener控制文件)的安全配置参数:ADMIN_RESTRICTIONS_listener_name=ON注解:这样当listener在线时,会防止对Oracle Listener未经授权的管理。C002C003C004C005C013C014Ref. No.Audit TestAudit FindingsTest OK? Y / NComplet

25、ed by: InitialsX-Ref: Work PapersX-Ref: OraAudit PluginsDD001D002D003D004D005D006操作系统安全审计目标确定通过主机操作系统的数据库访问路径是安全的。使用DBA_USERS系统视图(在节C002获得),确定所有的前缀是OPS$(操作系统传递给Oracle)的ID,检查主机操作系统的登录安全性,以确保所有ID代表合法和现有的用户。前后对照ini<System/Instance ID>.ora文件中和DBA_USERS系统视图中的OS_AUTHENT_PREFIX参数,以便确定和复审远程认证用户的清单。注解:

26、 OS_AUTHENT_PREFIX指定了一个Oracle用户登录服务器认证时的前缀。Oracle将这个参数值放在操作系统的帐号和密码之前。当收到一个连接请求,Oracle就将带前缀的用户名和数据库中的Oracle用户名作比较。这个参数的缺省值是OPS$,以便与以前的版本兼容。然而,更可取的是将前缀设置为“”(一个空串),这样可以免去在操作系统用户前加任何前缀。如果你允许带OPS$的 帐号从Windows 工作站登录,你很难确定他们实际上是谁。对于终端,你可以依靠操作系统的密码,而对于Windows,你却不能这样做。如果在init.ora文件中REMOTE_OS_AUTHENT设置为TRUE,

27、Oracle假定远程的操作系统已认证了这个用户。如果REMOTE_OS_AUTHENT设置为FALSE,远程用户没有密码就无法登录。IDENTIFIED EXTERNALLY(让操作系统认证密码)只对本地主机有效。同样,如果你使用”OPS$”作为你的前缀,你将可以用或不用密码登录本地,而不论你是否为你的ID指定密码或定义它为IDENTIFIED EXTERNALLY。通过确定remote_os_authent参数已设置为FALSE,来确保远程认证的网络用户不能够连接到数据库。注解:远程认证是由Oracle提供的一个安全功能,如果它设为TRUE,它把用户认证委托给连接到Oracle数据库的远程客

28、户端来完成。这样,数据库隐含相信任何成功认证自己的客户端。注意到客户端,一般而言,如PC机,通常不能很好地执行操作系统认证,因此,将远程认证打开是一个非常糟糕的配置。在一个更安全的配置中,这个功能是关闭的(FALSE),它强制客户端在进行数据库连接时使用正确的,基于服务器的认证。为限制远程认证并将对客户端的信任委托给数据库,init<SID>.ora(Oracle控制文件)数据库配置参数应该按如下方式设置:REMOTE_OS_AUTHENT = FALSE审计UNIX或NT的Oracle文件系统的安全性,以确保用户受限访问Oracle程序,配置文件,日志和表空间:a) 确保所有目录

29、和文件的属主是Oracle DBA帐号;b) 确保UNIX/NT的组属主是组DBA/ORA_DBA;c) 确保UNIX目录的许可是755或更小,NT目录的许可设置如下:l 属主为全部控制;l 同组和所有人为只读(RX)。d) 确保可执行Oracle二进制文件的UNIX文件的许可是750,NT文件许可设置如下:l 属主,完全控制;l 同组,只读(RX);l 所有人,无法访问。e) 确保UNIX umask参数已设置,这样日志文件不是所有人都能读和写的;f) 确保NT文件许可设置成文件继承其所在目录的许可;g) 审计Oracle数据库属主ID和组(Unix)的安全性,以确保只有授权的系统管理人员和

30、进程能使用;h) 确保只有数据库管理员才能使用Oracle正在运行的这个帐号。复审Unix /etc/group文件(或对应的NT组),以确保组DBA的成员限制在Oracle帐号,以防止未经授权的数据库内部连接。复审SQL*DBA和服务器管理器程序(Server Manager, SVRMGR)的文件许可,以确保只有Oracle管理帐号可以使用它们。下面的应用是Oracle标准的数据库配置和管理的工具:l DBA Studio;l Database Configuration Assistant;l Oracle Data Migration Assistant;l Net8 Assistan

31、t;l Net8 Configuration Assistant。另外,访问ODBC和Oracle SQL客户端(也就是,SQL Plus或SQL Plus工作表),在单独授权给他们帐号/特性(account/profile)的范围内允许用户执行任何管理任务。更多细节见C001。D003D004Ref. No.Audit TestAudit FindingsTest OK? Y / NCompleted by: InitialsX-Ref: Work PapersX-Ref: OraAudit PluginsEE001E002E003E004E005E006E007日常的批次作业审计目标确保在

32、Oracle中的日常批次作业在一个控制和安全的环境中调度和执行。核查是否为操作员提供了用户友好的工具来提交和执行日常批次作业。注解: 例如,为HASE数据仓库项目提供一个内部开发的作业调度器。它提供两个功能:(a) 基于执行原则自动地选择作业;(b) 自动地执行作业。另外,Oracle的表用于存放作业清单,也用于存放作业调度器的控制参数。确保提供了足够的文档,以帮助操作员正确、及时地提交日常批次作业。确定用于作业调度器的Oracle和操作系统帐号。复审赋给每个帐号的权限和展示的功能。确保生成作业执行报告给操作者,以便核查提交的作业的完整性。核查为矫正任何遇到的问题,是否采取了适当的跟进。确定发

33、布作业脚本的流程。确保只有授权的用户才能访问作业脚本和其它与作业调度器相关的应用。确定和复审特别的(ad hoc)作业提交流程。核查在日常批次处理中,作业脚本是否会用到高权限用户。如果是,确定其登录机制。如果密码存储在文件系统中,确保它得到很好的保护,且建议进行加密。注解: 从Oracle版本8开始,密码自动以加密形式保存。Ref. No.Audit TestAudit FindingsTest OK? Y / NCompleted by: InitialsX-Ref: Work PapersX-Ref: OraAudit PluginsFF001F002F003F004F005F006F00

34、7F008系统和对象审计审计目标确保在Oracle环境中系统和对象审计到位的水平,与业务要求一致。复审INIT.ORA,以确定在数据库中是否已启用了审计功能。(audit_trail参数应设为DB)。与安全官员讨论以查明日志记录了哪些事件(从数据库和/或从操作系统角度)。确定负责定期复审审计轨迹的小组。注解: Oracle中审计轨迹是通过触发器(Trigger)实现的,触发器是类似于过程的编译好的一段程序。审计师应该用自身的判断来评估什么事件应该记录进日志。无法定义最小的审计轨迹需求,因为每一个被审计的数据库环境都不同,取决于数据库的使用方法,表的个数和用户访问的方式。确保由用户执行的针对对象

35、的关键命令(create, alter, drop, delete, update,insert)都记录进日志并有人复审。注解: 基于和F002的注解类似的基本原则,无法定义关键命令的最小日志需求。审计师应该用自身的判断来评估什么事件应该记录进日志。核查并取得以下操作系统审计轨迹的范例:a) 实例启动;b) 实例关闭;c) 使用管理员权限连接进入数据库。对于下列系统视图,复审那些已设置的活动审计选项的适当性和充足性:a) DBA_PRIV_AUDIT_OPTS 列示活动的权限审计选项;b) DBA_OBJ_AUDIT_OPTS 列示活动的对象审计选项;c) DBA_STMT_AUDIT_OPT

36、S 列示活动的语句审计选项。注解: 对于更多的审计选项的信息,请参考“Oracle8 Server SQL Reference Manual”。选择一个审计轨迹的样本,并评估是否有一个适当的独立小组定期复审它们。下列建议的审计轨迹视图可供选择:a) DBA_AUDIT_TRAIL 列示所有审计轨迹条目;b) DBA_AUDIT_SESSION 列示所有关于CONNECT和DISCONNECT的审计轨迹记录;c) DBA_AUDIT_OBJECT 列示所有关于对象的审计轨迹记录;d) DBA_AUDIT_STATEMENT 列示所有关于grant, revoke, audit, noaudit和

37、alter system的审计轨迹记录。在Oracle中,审计轨迹存储在名为SYS.AUD$的表内。如果审计轨迹表已满,以至于没有新的审计记录可以插入,SQL语句就无法成功执行,直至审计轨迹被清除。安全官员负责控制这个表的大小并监控审计轨迹的增长:a) 确定赋予SYS.AUD$表的大小,以及管理这个表的流程;b) 实施自动控制,以及时监控表的大小。确保只有安全官员才有权限执行审计轨迹表的管理。F001F003Ref. No.Audit TestAudit FindingsTest OK? Y / NCompleted by: InitialsX-Ref: Work PapersX-Ref: O

38、raAudit PluginsGG001G002G003G004G005G007G008G009G010G011G012G013备份策略审计目标确保正在使用的备份策略,能够允许在业务要求的期限内恢复数据。确保备份和恢复策略已经定义,并以文档形式写进适当的手册。确定是否定期执行完全的操作系统备份,并在现场外保存一段合理的时间。除了完全的操作系统备份之外,确定采用了别的备份方式。如数据导出(data export)。核查这些备份是否定期执行。核查备份恢复策略已经测试过,以保证启用时是有效的。确保init<System/Instance ID>.ora文件包含的参数log_archive

39、_start设置为true,以便启动归档日志模式。这个设置使联机重做日志的归档自动化,当联机重做日志满时,不需要采取任何动作,Oracle自动去归档它。由于比较方便,自动归档是归档方式的一种选择。注解: 联机重做日志只用于操作在归档模式的Oracle从介质失败中恢复。这种模式指定重做日志在满后归档到第二个存储。与此相反的是,在非归档模式,将无法利用归档重做日志从介质失败中恢复。确保表空间分布在多个硬盘上,以分散数据的输入/输出。确保重做日志(redo log)和控制文件(control files)已经挂在分开的磁盘上,而且这些磁盘用两个分开的磁盘做好镜像。注解: 在Unix上使用df命令的输

40、出,在Windows NT上使用磁盘管理工具。重做日志文件可以命名为redoxy.log,xy是确定文件的号码。控制文件可命名为controlxy.ctl, xy是确定文件的号码。复审config.ora文件的内容,检查控制文件的名字,并确保系统缺省产生的3份数据库控制文件,放在3个不同的磁盘的不同文件系统上。注解: 通常,数据库的控制文件存储数据库的物理结构状态。控制文件对数据库运作来说最至关重要,因此,它谨慎地在分开的地方存储控制文件。一个控制文件包含(但不限于)如下类型的信息:l 数据库信息(RESETLOGS SCN和时间戳);l 线程检查点的进展;l 表空间和数据文件记录(文件名,数

41、据文件检查点,读/写状态,脱机范围);l 重做线程(目前的联机重做日志);l 日志记录(序列号,每个日志的SCN范围);l RMAN备份和拷贝记录;l 坏块信息;l 控制文件中的状态信息,如数据库检查点,目前联机重做日志文件,用于在崩溃、实例或介质恢复期间指引数据库,的数据文件头检查点。复审并确保关键的数据文件表空间是镜像的,以便更快地恢复。确保每个磁盘使用分开的控制器单元(Unix中,见df输出中的设备文件名标准,Windows NT使用磁盘管理工具),以减少控制器失败造成的影响。确保磁盘和表空间监控程序到位,以确保预先知道增长的需求,以便重新定义大小或执行表空间重组。确定在系统设计中,融入

42、了整个系统的内存和硬盘空间的需求以及将来的规划。G007Ref. No.Audit TestAudit FindingsTest OK? Y / NCompleted by: InitialsX-Ref: Work PapersX-Ref: OraAudit PluginsHH001H002H003数据库联网审计目标确保数据库网络的基础设施已设计成支持数据库应用的可用性需求和安全需要。取得一份描绘数据库服务器以及它们与网络的其他部分的逻辑和物理连接的网络拓扑图:a) 确定有高速,高带宽的传输介质用于支持非常频繁使用的SQL网络的网络组件之间的通信(例如,数据库服务器和应用服务器之间);b) 确保采用了冗余链路(例如,接口,网络集线器和路由器等)来满足系统可用性的需求;c) 确定有单独的维护端口(网络接口)用于管理和维护访问,以便在网络层次限制对管理功能的访问。注解: 这样就防止了所谓的“SQL 射入”攻击,即对暴露给不可信的网络如Internet或更多情况下,放置在DMZ并连接到一个暴露给Internet或其他不可信网络的系统(如,Web Server

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论