版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Oracle数据库安全建议数据库安全建议目目 录录1ORACLE数据库安全管理数据库安全管理.11.1目的和意义.11.2安全管理流程.11.3安全策略.31.4管理用户、权限和资源.81.5审计准则.111.6管理审计跟踪信息.151.7细粒度审计.23 第 1 页Copyright 2015 Oracle CorporationAll rights reserved.1 oracle数据库安全管理数据库安全管理1.1 目的和意义目的和意义基于数据库管理应用平台的社保业务管理系统已成为大连社保信息管理系统的核心业务。如何利用数据库安全技术建立和完善大连社保核心业务系统的安全架构,消除已存在的
2、和可能潜在的安全隐患,保证核心业务系统安全可靠的运行,规范业务管理机制,对网络信息安全管理和建设是非常必要的。1.2 安全管理流程安全管理流程在制定安全管理策略之前,一定要定义好安全管理的工作流程,因为一个好的安全策略必须要有一个很好的执行策略,才能达到更好的系统安全。安全管理流程最重要的是管理:即制定良好的工作流程,制定相应的模板,同时加强审批流程和监控力度,做到有章可循、有证可查。同时流程的制定,也使系统维护更加角色明确、责任清晰,达到“进不来、改不了、赖不掉”的管理水平。对于数据库的管理、维护工作,要制定好工作流程,特别是在运营维护时期,消除任何操作失误。要制定定期检查流程、数据库日常维
3、护流程和数据库修改、维护、升级和调优的工作流程,其中最重要的是要让主管领导清楚:到底作了哪些工作,同时也为审计工作提供依据。安全管理工作流程如下图所示: 第 2 页Copyright 2015 Oracle CorporationAll rights reserved.上面是一个简单的安全管理流程,用户可以参考指定符合自己运行的工作流程,同时指派合适的人员和角色,或是结合目前流行的监控设备,让自己的系统更加安全可靠。下面对流程有关的角色作一介绍,以帮助用户更好地理解安全管理流程。主管领导:主管领导:主管领导,是具有决定能否对数据库进行维护、修改、升级和调优等工作的业务主管和运营维护主管,当然上
4、面只是一个简单的图例,用来说明对于关键业务平台而言,任何操作都是很重要的,尤其是对数据库的操作,对业务系统影响最大,所以必须有相应领导的认可,才能进行操作。系统维护人员:系统维护人员:这里特意强调系统维护人员,原因很简单,系统和数据库的关系十分密切,对于系统的升级、维护、硬件更换、网络调整、打Patch等操作对数据库有很大的影响,因此也需要和数据库管理人员共同协作,作好充分的准备工作和恢复策略,以免因系统原因导致数据库的崩溃或数据丢失。数据库管理人员:数据库管理人员: 第 3 页Copyright 2015 Oracle CorporationAll rights reserved.数据库管理
5、人员对于数据库的安全来讲,位置十分重要,任何数据库相关的维护、升级、管理等都由他来具体实现,因而技术的熟练和对每一个操作可能带来的损失都要清清楚楚,以免造成重大损失。审计人员:审计人员也是一个很重要的角色,要对数据库管理人员的操作进行监督和管理,以避免数据库管理人员恶意的修改数据库中的数据。监控设施:监控设施也是现在系统安全中必不可少的设施,从生物识别(指纹、掌纹、瞳孔)、到普通的IC卡,可以进行身份的确认,同时摄像仪器的广泛使用,也为安全带来了相当大的优势,可以全程监控对系统的任何操作,包括任何人,任何时间和任何指令,对安全带来了更好的监控记录,以便进行问题和事故分析。业务人员:只能从业务应
6、用中操纵数据,不能进行任何数据库维护工作。其他用户:只能从业务应用中操纵数据,不能进行任何数据库维护工作。1.3 安全策略安全策略制定了完善的安全管理工作流程后,需要制定数据库的安全管理策略,Oracle数据库的安全管理策略包括:1、系统安全策略2、数据安全策略3、用户安全策略4、口令管理策略 第 4 页Copyright 2015 Oracle CorporationAll rights reserved.5、审计策略1.3.1 系统安全策略系统安全策略系统安全策略包括:数据库用户管理、数据库操作规范、用户认证、操作系统安全。1、数据库用户管理:在Oracle数据库中,数据库用户是对信息访问
7、的途径。因此,对数据库用户的管理应当进行严格安全维护。只有可信的人员才拥有管理数据库用户的强大权限。2、数据库操作规范:由于数据是所有系统的核心,不能有任何篡改和破坏,而数据库管理人员是唯一能直接访问数据库的人员,其重要性和安全性可想而知,因此,必须加强对Oracle数据库维护人员的监控,规范操作流程:1)操作内容文档化,将操作内容形成文档,而且对可能产生的后果和如何提前进行预防措施都要写清楚,特别是对数据库结构的更改,要考虑相关的操作,如备份等。2)加强审批过程管理,相关领导必须清楚数据库维护人员要进行什么样的操作和相关后果,并签字审批。3)加强操作过程的管理,对数据库管理维护人员的操作,要
8、有至少一人陪同,以进行操作监督,尽量避免误操作;同时可以进行摄像监控操作屏幕,对整个操作过程进行记录。4)加强问题处理的管理,对于数据库所出现的问题要书写相应报告,分析原因,同时避免下次出现同样问题。5)加强数据库文档管理,对于数据库的设计、开发、实施过程中涉及数据库的工作很多,包括数据库的结构设计(物理和逻辑设计),建模脚本、协助开发人员工作、调优工作等等,都要予以记录和归档,以便于后期的维护和工作交接。3、用户认证: Oracle可以使用主机操作系统认证用户,也可以使用数据库的用户认证。从安全的角度出发,建议将initSID.ora文 第 5 页Copyright 2015 Oracle
9、CorporationAll rights reserved.件中的remote_os_authent参数设成FALSE,以防止没有口令的连接。建议将remote_os_roles设成FALSE,防止欺骗性连接。4、操作系统安全:对运行Oracle和任何数据库应用程序的操作系统环境考虑如下安全问题:1)数据库管理员必须拥有操作系统权限来创建和删除文件2)通常的应用用户不应拥有操作系统权限来创建或删除与数据库有关的文件3)如果操作系统识别对用户的数据库角色,安全管理员就必须拥有操作系统权限来修改操作系统帐户的安全域应用用户或第三方软件用户对数据库的访问要有合适的系统权限,而不是dba或oinst
10、all用户组。数据库管理员系统账户(如oracle)的口令必须符合规定,不能太简单,而且要定期更改口令,另外不准泄漏口令。系统管理员在做系统维护的同时,应与数据库管理员协作,避免破坏数据库的有关操作发生。1.3.2 数据安全策略数据安全策略数据安全策略决定哪些用户可以访问特定的对象,以及对象上的每个用户允许执行的特定类型的操作。整体的数据安全性应当基于数据的敏感程度。如果信息不是太敏感,那么数据安全策略可以松一些。如果数据是敏感的,就应制定安全策略,以保持对对象访问的严格控制,如对敏感数据进行加密处理。1.3.3 用户安全策略用户安全策略用户安全策略包括:一般用户安全、最终用户安全、管理员安全
11、、应用程序开发人员安全、应用程序管理员安全。 第 6 页Copyright 2015 Oracle CorporationAll rights reserved.1.3.3.1一般用户安全1、口令安全:如果用户认证由数据库管理,则安全管理员应制定口令安全策略来维护数据库访问的安全性。可以配置oracle使用加密口令来进行客户机/服务器和服务器/服务器连接:ORA_ENCRYPT_LOGIN=TRUEDBLINK_ENCRYPT_LOGIN=TRUE2、权限管理:管理有多用户、多应用程序或多对象的数据库的安全管理员应当利用角色提供的优势。角色大大简化了在复杂环境中的权限管理任务。3、最终用户安全
12、:安全管理员必须为最终用户安全制定策略。如果数据库很大且有很多用户,安全管理员可以决定如何对用户组进行分类,为这些用户组创建用户角色,对每个角色授予必要的权限或应用程序角色,以及对用户指定用户角色。角色是授权和管理不同数据库用户组需要的公用权限的最简单方式。4、管理员安全:安全管理员应当拥有阐述管理员安全的策略。在数据库创建后,应对SYS和SYSTEM用户名更改口令,以防止对数据库的未认证访问,且只有数据库管理员才可用。5、应用程序开发人员安全:安全管理员必须为使用数据库的应用程序开发人员制定一套特殊的安全策略。安全管理员可以把创建必要对象的权限授予应用程序开发人员。反之,创建对象的权限只能授
13、予数据库管理员,他从开发人员那里接收对象创建请求。6、应用程序管理员安全:在有许多数据库应用程序的大型数据库系统中,可以设立应用程序管理员。 第 7 页Copyright 2015 Oracle CorporationAll rights reserved.1.3.4 口令管理策略口令管理策略口令管理包括:帐户锁定、口令老化及到期、口令历史记录、口令复杂性校验。1、帐户锁定:当某一特定用户超过了失败登录尝试的指定次数,服务器会自动锁定这个用户帐户。例如:用户ASHWINI 的失败登录尝试的最大次数为4,帐户保持锁定的时间是30天:经过30天后这一帐户会自动解锁。CREATE PROFILE p
14、rof LIMITFAILED_LOGIN_ATTEMPTS 4PASSWORD_LOCK_TIME 30;ALTER USER ashwini PROFILE prof;2、口令老化及到期:DBA使用CREATE PROFILE语句指定口令的最大生存期,当到达了指定的时间长度则口令到期,用户或DBA必须变更口令。例如:ASHWINI可以在90天内使用同样的口令直至它到期。CREATE PROFILE prof LIMITFAILED_LOGIN_ATTEMPTS 4PASSWORD_LOCK_TIME 30PASSWORD_LIFE_TIME 90;ALTER USER ashwini PR
15、OFILE prof;3、口令历史记录:DBA使用CREATE PROFILE语句指定时间间隔,在这一间隔内用户不能重用口令。例如:DBA说明在60天中用户不能重用自己的口令。CREATE PROFILE prof LIMIT 第 8 页Copyright 2015 Oracle CorporationAll rights reserved.PASSWORD_REUSE_TIMEPASSWORD_REUSE_MAX UNLIMITED;4、口令复杂性校验:通过使用PL/SQL脚本utlpwdmg.sql(它设置缺省的概要文件参数),可以指定口令复杂性校验例行程序。口令复杂性校验例行程序执行下列
16、检查:1、口令最小长度为4;2、口令与用户ID不同;3、口令至少有一个字母、一个数字和一个标点符号标记;4、口令不和welcome,account, database,或user 之类的简单字匹配;5、口令与以前的口令至少有3个字母不同。1.3.5 审计策略审计策略安全管理员应为每个数据库审计过程定义一套策略。例如,可以禁用数据库审计,除非察觉可疑活动。当需要审计时,安全管理员必须决定用何种明细级别审计数据库;通常,根据查明的可疑操作,当进行普通系统审计之后,再进行特定类型的审计。InitSID.ora中audit_trail参数设置成OS、DB或TRUE,确保基本的审计功能被使用。建议将此参
17、数设置成OS。设置audit_file_dest参数,指定到某一Oracle为属主的目录,设置该目录的权限为读/写。1.4 管理用户、权限和资源管理用户、权限和资源Oracle 用户管理1用户名称命名规则:用户名称必须遵循命名规则,如命名长度,名字缩写规范,名字同时也必须能明确表示与其应用系统的关联关系。 第 9 页Copyright 2015 Oracle CorporationAll rights reserved.例如:CGAC_DEC,表示海关的报关子系统的数据库用户名称,其中CGAC是海关总署的缩写,DEC是报关的缩写,而中间用下划线分隔,很清晰,也容易管理。2用户口令设置规则:用户
18、口令设置,必须保证至少6位长度,而且要包含大小写字母、数字和特殊字符,同时不能使用自己名称、常用电话和生日等安全性极低的口令。同时好的口令管理,要保证口令定期更换,同时在一定周期范围内不要重复使用。3用户名和密码保密规则:用户和密码必须妥善保管和使用,相应用户和管理人员必须保守秘密,不要造成人为地口令泄露,也不要擅自互相交换用户名和口令,自己只负责相关的口令管理。4用户统一管理规则:用户的命名、创建、修改、授权等管理必须由数据库管理员统一管理,不能擅自更改,必须遵守一定的流程。1.4.1 权限和角色权限和角色权限分为系统权限和对象权限1、对象权限:select,insert,update,de
19、lte,index,alter on tablegrant insert (column1) on test to john;2、系统权限:alter system,alter database,create table,connect,sysdba,sysoper,.通过下列命令授权和回收权限:grant sysdba to system; 第 10 页Copyright 2015 Oracle CorporationAll rights reserved.revoke sysdba from system;grant select on test to system;revoke sele
20、ct on test from system;通过下列数据字典,查询权限信息:dba_tab_privs,dba_sys_privs,dba_role_privs角色是一组权限的集合(或没有权限),方便dba对权限集合的管理。如:imp_full_database,exp_full_database;通过下列数据字典,查询角色信息:dba_roles,session_rolesk,role_role_privs;1.4.2 用概要文件(用概要文件(profile)管理数据库系统资源)管理数据库系统资源概要文件用来限制和管理数据库系统资源的使用,当数据库创建时,会创建default的概要文件。它
21、主要包含以下内容:1、每个用户能够打开的并发会话数;2、连接到数据库的使用或空闲时间;3、cpu的使用时间;4、private sql 和 pl/sql 在SGA区的使用;5、执行的逻辑读。例子:create profile account_user limitsession_per_user 6connect_time 1440idle_time 120logical_reads_per_call 1000000 第 11 页Copyright 2015 Oracle CorporationAll rights reserved.password_life_time 60password_r
22、euse_time 90password_reuse_max unlimitedfailed_login_attempts 6password_lock_time unlimited;通过下列数据字典,查询profile的信息:dba_profiles,user_resource_limits,user_password_limits,resource_cost;1.5 审计准则审计准则在当今繁杂的数据事务处理环境中,需要对系统内部进行的工作有所监控。不仅需要知道谁连到哪台主机,还需要统计数据,监控数据访问,或对那些可疑的操作进行监控。所有这些工作的完成都可以利用审计的特点。1.5.1 决定是
23、否使用数据库或操作系统的审计跟踪功能决定是否使用数据库或操作系统的审计跟踪功能用户的操作系统也可以包含审计跟踪,用它来存储由操作系统审计程序生成的审计记录。操作系统特定的审计程序也许支持或者不支持对操作系统审计跟踪的数据库审计功能。使用数据库审计跟踪会带来下列好处:1.根据预先定义的数据字典的审计跟踪视图来查看所选的审计跟踪部分2.可以使用Oracle 工具(比如Oracle 报表)生成审计报表操作系统的审计跟踪也可以合并来自多个源的审计记录,这些源包括Oracle 和其他应用程序。因此如果所有审计记录都来自同一个地方那么检验系统活动会更加有效。 第 12 页Copyright 2015 Or
24、acle CorporationAll rights reserved.1.5.2 保持审计过的信息可管理保持审计过的信息可管理尽管相对来说审计的花费不是很多,但是要尽可能地限制经过审计的事件的数目。这样将会最低限度地减小执行经过审计的语句所带来的性能方面的影响,并且减小审计跟踪的大小。当设计审计策略时使用下面的常用准则:1.评价审计的目的在对审计的原因有清晰地了解之后,可以设计合适的审计策略并避免不必要的审计。2.理智地进行审计审计必要的最少数目的语句、用户或对象来获得目标信息。这样避免了从混乱的重要的信息中审计不必要的信息,并因此防止消耗SYSTEM 表空间中的宝贵空间。平衡一下你的需求来
25、收集足够的信息,以便有能力存储和处理这些信息。1.5.3 审计可疑的数据库活动的准则审计可疑的数据库活动的准则当执行审计以便监控可疑的数据库活动时,使用以下一些准则:1.先进行一般的审计,再进行特别的审计。当开始审计可疑的数据库活动时,通常,可以用于目标指定用户或模式对象的信息并不是很多。因此,必须首先设置一些更加普通的审计选项。一旦记录并分析了初步的审计信息,就应该关掉这些普通的审计选项。并启用更特殊的审计选项。这种处理过程一直继续直到收集了足够证据可以对可疑数据库活动的可疑起因做明确而具体的结论时为止。2.保护审计跟踪当审计可疑的数据库活动时,需要保护审计跟踪以便在没有经过审计时不能添加、
26、更改或删除审计信息。 第 13 页Copyright 2015 Oracle CorporationAll rights reserved.1.5.4 审计正常的数据库活动的准则审计正常的数据库活动的准则当审计的目的是收集特定的数据库活动的历史信息时,使用以下准则:1.只审计适当的操作要避免在混乱的重要信息中得到无用的审计记录,并减少审计跟踪管理的数量,只需要审计目标数据库活动就可以。2.存档审计记录并清除审计跟踪在收集到所需的信息之后,将感兴趣的审计记录存档并清除这些信息的审计跟踪。1.5.5 ORACLE数据库的审计功能数据库的审计功能ORACLE数据库审计的功能允许对表的访问、权限的使用
27、以及指定的SQL语句的使用这些操作进行跟踪。除此之外,它还提供了一种办法-代表终端用户去跟踪中间层的连接。对数据库的审计分三类:1、语句级审计;2、特权级审计;3、对象级审计。1语句审计语句审计只允许对SQL语句进行审计。语法:AUDIT option, option,BY username | proxy_name ON BEHALF OF ANY | username BY SESSION | ACCESS 第 14 页Copyright 2015 Oracle CorporationAll rights reserved.WHENEVER NOT SUCCESSFUL在以下两组SQL语句
28、上使用审计语句1)DDL 语句对于具体的数据库模式对象类型,而不是具体某个对象。下面的审计命令可以对所有的CREATE TABLE和DROP TABLE语句进行审计:AUDIT TABLE;2)DML 语句对特定类型的数据库对象的操作,而不是具体地对某一命令对象的操作。下面的审计命令对所有的SELECT FROM TABLE语句审计,这条SQL语句而不适用于个别表:AUDIT SELECT TABLE;审计命令可以对所有用户或部分用户的操作进行审计。2 特权审计特权审计特权审计是用来审计系统特权的使用情况,例如:CREATE TABLE或SELECT ANY TABLE。可以对任何系统特权的使
29、用情况进行审计。语法:AUDIT option | ALLON username.objectnameBY SESSION | ACCESSWHENEVER NOT SUCCESSFUL例子:AUDIT CREATE TABLE; 第 15 页Copyright 2015 Oracle CorporationAll rights reserved.AUDIT UPDATE, DELETE ON john.cumstomerBY ACCESS WHENEVER SUCCESSFUL;可以设置特权审计去审计一个数据库的所有用户或部分用户的系统特权行为。3对象审计对象审计对象审计可以对特定DML语句
30、进行审计。与以下对象相关的SQL语句的执行情况可被审计,这些对象包括:表格、视图、序列、存储过程、函数和包。语法:AUDIT option | ALLON username.objectnameBY SESSION | ACCESSWHENEVER NOT SUCCESSFUL对象审计应用于数据库的所有用户。1.6 管理管理审计跟踪信息审计跟踪信息1.6.1 审计跟踪信息内容审计跟踪信息内容审计跟踪记录可以包含不同类型的信息,这要根据审计的事件和设置的审计选项来定。通常每个审计跟踪记录要包括下面的信息:操作系统登录用户名用户名会话标识符终端标识符 第 16 页Copyright 2015 Or
31、acle CorporationAll rights reserved.访问的模式对象的名称已经执行的操作或者计划执行的操作操作的完成代码日期和时间戳写入操作系统审计跟踪中的审计跟踪记录是加密的,并且不可读但是这些记录可以在数据字典文件中解密。审计跟踪不存储有关数据值的信息,因为这可能涉及到经过审计的语句。例如,当审计UPDATE 语句时,就不存储更新过的行的新数据值和原来的旧数据值。但是,使用细粒度审计方法可以执行这种特定类型的审计。1.6.2 默认的审计事件默认的审计事件不管是否启用数据库审计,Oracle 通常会审计某些关系数据库动作并写入操作系统审计跟踪中,这些事件包括以下一些内容:1
32、.启动实例2.关闭实例3.使用管理员权限连接数据库1.6.3 设置审计选项设置审计选项使用AUDIT 语句来指定审计选项AUDIT 语句允许用户在下列三种级别下设置选项:级别效果导致影响特定类型数据库对象的特殊的SQL 语句或语句组的审计。例如AUDIT TABLE审计CREATE TABLE 、TRUNCATE TABLE、COMMENT ON TABLE 和DELETE FROM TABLE 语句。权限审计授予特殊系统权限的语句。例如AUDIT 第 17 页Copyright 2015 Oracle CorporationAll rights reserved.CREATE ANY TRI
33、GGER 审计使用CREATEANY TRIGGER 系统权限发布的语句。对象审计作用在特殊对象上的语句,比如emp 表上的ALTER TABLE 语句。要使用AUDIT 语句来设置语句以及权限选项,就必须拥有AUDIT SYSTEM 权限。要使用AUDIT 语句来设置对象审计选项,就必须拥有经过审计的对象或者拥有AUDIT ANY权限。设置语句和权限审计选项的审计语句可以包含一个BY 子句,用这个子句来指定用户或者应用程序代理的列表,以便限制语句和权限审计选项的范围。当设置审计选项时,也可以为审计指定以下条件:BY SESSION/BY ACCESSBY SESSION 将使得Oracle
34、为在相同会话中发布的同一种类型的所有SQL 语句写入一条记录。BY ACCESS 将使得Oracle 为每一个访问写入一条记录。WHENEVER SUCCESSFUL/ WHENEVER NOT SUCCESSFULWHENEVER SUCCESSFUL 选择只对成功的语句进行审计。WHENEVER NOT SUCCESSFUL 选择只对失败或导致错误的语句进行审计。在新的数据库会话创建的时候该会话将从数据字典中获得审计选项。在数据库连接期间这些审计选项将保持有效。新系统或对象审计选项的设置将会引起所有后续数据库会话使用这些选项;现有的会话继续使用会话创建时设置的审计选项。警告:AUDIT 语
35、句只能指定审计选项,它不能从整体上启用审计,如果要打开审计功能并基于当前设置的审计选项控制Oracle 是否生成审计记录,就需要设置初始化参数AUDIT_TRAIL。 第 18 页Copyright 2015 Oracle CorporationAll rights reserved.1.6.3.1 指定语句审计有效的语句审计选项可以包含在AUDIT 和NOAUDIT 语句中。1.6.3.2 审计连接和审计断开连接要审计所有成功和不成功的数据库连接以及断开连接,不管用户是谁均可采用BY SESSION,键入以下语句:AUDIT SESSION;也可以单独为用户设置这个选项,如同下面的例子:AU
36、DIT SESSION BY scott, lori ;1.6.3.3 审计因为对象不存在而导致失败的语句NO EXISTS语句选项指定审计因为目标对象不存在而导致失败的所有SQL 语句。1.6.3.4 指定权限审计权限审计选项准确地与对应的系统权限匹配。例如使用DELETE ANY TABLE 权限进行审计的选项:DELETE ANY TABLE 要启用该选项,使用类似下面例子中的语句即可:AUDIT DELETE ANY TABLE BY ACCESS WHENEVER NOT SUCCESSFUL;要审计DELETE ANY TABLE 系统权限的所有成功和不成功使用键入下列语句:AUD
37、IT DELETE ANY TABLE;要审计在所有表上不成功的所有SELECT、INSERT 和DELETE 语句以及EXECUTE PROCEDURE 系统权限的不成功使用,需要由所有数据库用户和个别经过审计的语句发布以下语句:AUDIT SELECT TABLE, INSERT TABLE, DELETE TABLE, EXECUTE PROCEDURE BY ACCESS 第 19 页Copyright 2015 Oracle CorporationAll rights reserved.WHENEVER NOT SUCCESSFUL;设置任何语句或权限审计选项都必须拥有AUDIT S
38、YSTEM 系统权限。通常安全管理员是唯一授予这个系统权限的用户。1.6.3.5 指定对象审计用户可以为包含在用户模式中的对象设置任何的对象审计选项。为包含在另一个用户模式中的对象设置对象审计选项,或者设置默认对象审计选项,就必须有AUDIT ANY 系统权限。通常,安全管理员是唯一授予AUDIT ANY 系统权限的用户。要审计scott.emp 表上的所有成功和不成功的DELETE 语句采用BY SESSION 默认值键入下列语句:AUDIT DELETE ON scott.emp;要审计属于用户jward 的dept 表上的所有成功的SELECT,INSERT 和DELETE 语句,采用B
39、Y ACCESS 键入下列语句:AUDIT SELECT, INSERT, DELETE ON jward.dept BY ACCESSWHENEVER SUCCESSFUL;要将默认对象审计选项设置为审计所有不成功的SELECT 语句采用BY SESSION ,键入下列语句:AUDIT SELECT ON DEFAULT WHENEVER NOT SUCCESSFUL;1.6.3.6 在多层环境中审计在多层环境中,Oracle 通过所有层保存客户的标识符。这样就能够审计代表客户实施的操作。如果这么做,只要在AUDIT 语句中使用BY proxy 子句即可。该子句允许带一些选项,用户可以利用这
40、个子句做以下工作:审计由指定代理为自己发布的SQL 语句 第 20 页Copyright 2015 Oracle CorporationAll rights reserved.审计代表指定的一个或多个用户执行的语句审计代表任何一个用户执行的所有语句下面的例子审计了由代理应用程序服务器appserve 代表客户jackson 发布的SELECT TABLE 语句。AUDIT SELECT TABLE BY appserve ON BEHALF OF jackson;1.6.4 关闭审计选项关闭审计选项NOAUDIT 语句可以关闭Oracle 的各种审计选项。警告:NOAUDIT 语句只指定审计选
41、项。它不能从整体上禁用审计。要关闭审计并停止Oracle 生成审计记录,可以在数据库初始化参数文件中设置初始化参数AUDIT_TRAIL。1.6.4.1 关闭语句和权限审计下面的语句将关闭相应的审计选项:NOAUDIT session;NOAUDIT session BY scott, lori;NOAUDIT DELETE ANY TABLE;NOAUDIT SELECT TABLE, INSERT TABLE, DELETE TABLE,EXECUTE PROCEDURE;下面的语句将关闭所有语句审计选项:NOAUDIT ALL;下面的语句将关闭所有权限审计选项:NOAUDIT ALL P
42、RIVILEGES;要禁用语句或权限审计选项就必须拥有AUDIT SYSTEM 系统权限。 第 21 页Copyright 2015 Oracle CorporationAll rights reserved.1.6.4.2 关闭对象审计下面的语句将关闭相应的审计选项:NOAUDIT DELETE ON emp;NOAUDIT SELECT, INSERT, DELETE ON jward.dept;此外要关闭emp 表上的所有对象审计选项,可以键入下列语句:NOAUDIT ALL ON emp;要关闭所有默认的对象审计选项,可以键入下列语句:NOAUDIT ALL ON DEFAULT;1.
43、6.5 启用和禁用数据库审计启用和禁用数据库审计任何授权的数据库用户都可以在任何时候设置语句、权限和对象审计选项,但是除非启用数据库审计,否则Oracle 不能生成并在审计跟踪中存储审计记录。安全管理员通常负责这项操作。通过数据库初始化参数文件中的AUDIT_TRAIL 初始化参数启用和禁用数据库审计。这个参数可以设置为下列值:-DB 启用数据库审计并引导所有审计记录到数据库的审计跟踪-OS 启用数据库审计并引导所有审计记录到操作系统的审计跟踪-NONE 禁用审计这个值是默认值可以用AUDIT_FILE_DEST 初始化参数来指定审计文件存储的目录。如果编辑了初始化参数文件,需要重新启动数据库
44、实例以便按照计划启用或禁用数据库审计。这些参数不是动态的。 第 22 页Copyright 2015 Oracle CorporationAll rights reserved.1.6.6 控制审计跟踪的增长和大小控制审计跟踪的增长和大小如果审计跟踪已经完全装满,而且不能继续插入更多的审计跟踪,那么将不能成功执行经过审计的语句,直到清除审计跟踪。所有发布了经过审计的语句的用户都会收到警告信息。因此,安全管理员必须控制审计跟踪的增长和大小。当启用审计并且正在生成审计记录时,审计跟踪将依据以下两个因素增长:打开的审计选项的数目经过审计的语句的执行频率要控制审计跟踪的增长可以采用以下方法:启用和禁用数据库审计。如果启用了数据库审计,那么将生成审计记录并将其存储在审计跟踪中。如果禁用了数据库审计,那么将不能生成审计记录。要精挑细选需要打开的审计选项。如果执行了很多经过选择的审计,那么将不会生成无用或不必要的审计信息,并将它们存储在审计跟踪中。要严格控制执行对象审计的能力。1.6.6.1 从审计跟踪中清除审计记录例如,要从审计跟踪中删除所有审计记录,可以键入下列语句:DELETE FROM SYS.AUD$;还可以从作为审计表emp 的结果产生的审计跟踪中删除所有审计记录,可以键入下列语句:DEL
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年高端装备制造技术引进与合作合同
- 2025年长春货运从业资格证新政
- 2024标准房屋买卖协议书
- 2024广告制作合同
- 2024年钢筋工班组临时劳务合同
- 二零二五年度夜景照明设备安装与调试合同样本3篇
- 2024年粤教版七年级物理下册阶段测试试卷含答案
- 推进未来法律人才培养的路径设计与战略实施
- 2025年沪教版必修2英语下册月考试卷
- 2025年湘教版八年级化学下册月考试卷
- 单位工程、分部工程、分项工程及检验批划分方案
- 七年级数学资料培优汇总精华
- 器乐Ⅰ小提琴课程教学大纲
- 主债权合同及不动产抵押合同(简化版本)
- 服装厂安全生产责任书
- JGJ202-2010建筑施工工具式脚手架安全技术规范
- 液压爬模系统作业指导书
- 2018-2019学年北京市西城区人教版六年级上册期末测试数学试卷
- SFC15(发送)和SFC14(接收)组态步骤
- LX电动单梁悬挂说明书
- 旅行社公司章程53410
评论
0/150
提交评论