`
doxingg
  • 浏览: 5411 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

Oracle数据库审计

 
阅读更多

转自http://blog.csdn.net/annicybc/article/details/1568115

一、何谓数据库审计?

数据库审计,就是对数据库的活动做跟踪记录,主要包括数据库连接,SQL语句执行,数据库对象访问这些方面的跟踪记录。

 

二、审记记录的存储方式

分为两种:一种是存储在操作系统文件中,一种是存储在system表空间中的SYS.AUD$表中。

 

三、对数据库性能影响的考虑

审计必然需要占用CPU,因此,需要综合平衡审计需求与性能之间的平衡性问题,以确定出最好的审许策略。

 

四、审记结果中包含哪些信息

前面讲到审许结果的存储分数据库存储和文件存储两种方式。对于数据库存储的情况,SYS.AUD$表中包含以下信息:

1)        ·操作系统用户名

2)        ·数据库用户名

3)        ·连接会话标识

4)        ·终端标识

5)        ·被访问的schema对象名

6)        ·尝试的操作

7)        ·操作的完整代码

8)        ·日期和时间戳

 

若审计记录存储在外部操作文件中,则该文件可能包含以下信息:

1)         ·操作系统产生的审计记录

2)         ·数据库的审计记录

3)         ·被审计到的数据库操作

4)         ·超级管理员(SYS)的审计记录

其中,被写到文件中的审计记录是以编码的方式存储的,如果要理解这些编码所对应的信息,可以查询以下数据字典表:

编码信息数据字典表

-------------------------------

数据库操作代码表示尝试的操作。它的相关描述可以从数据字典表AUDIT_ACTIONS表中查询到

操作所使用的权限可以在字典表SYSTEM_PRIVILEGE_MAP中查询到对应的说明

完整的操作代码操作成功时将返回0,失败时返回相关oracle错误信息,错误信息码所对应的说明可以从oracle官方文档中获得

--------------------------------

 

五、缺省的审计

不论当前是否已经开启的审计功能,数据库都会把一些数据库相关的操作写入外部审计文件中(注意:不是写入SYS.AUD$),这些被缺省审计的操作是:

1)         ·以超级管理员权限对数据库的连接(connectASSYSDBAconnectASSYSOPER)

2)         ·数据库启动

3)         ·数据库停止

 

六、对超级管理员用户的操作行为的审计

超级管理员用户指的是以ASSYSDBAASSYSOPER方式连接数据库的用户。初始化参数AUDIT_SYS_OPERATIONS用来指定是超级管理员的审计选项,如果将AUDIT_SYS_OPERATIONS设置为TRUE,那么所有超级管理员的操作都将被审计,而不管当前是否有开启审计功能,而且所有的审计信息都被写入外部审计文件中(注意:不是写入SYS.AUD$)。

 

七、执行审计

1.设定审计记录的存放位置

初始化参数AUDIT_TRAIL指定了审计记录的存放位置,该参数有三个取值:

1)         ·DB审计记录存放在数据库的SYS.AUD$表中

2)         ·OS审计记录存放在外部的操作系统文件中

3)         ·NONE关闭审计(缺省值)

初始化参数AUDIT_FILE_DEST指定了当审外部审记文件目标存储路径,其缺省值是$ORACLE_HOME/rdbms/audit

2.审计选项

这个审计选项指的是执行审计的AUDIT语句的可选项。AUDIT语句的语法请参考oracle官方SQL参考。

 

3.以实例说明审计

a.审计某用户的会话的创建与结束

AUDITSESSIONBYscott,fey;

b.审计所有用户的会话的创建与结束

AUDITSESSION;

c.审计删除表的操作

AUDITDELETEANYTABLE;

c.审计删除表的操作(限制:只审计删除失败的情况)

AUDITDELETEANYTABLEWHENEVERNOTSUCCESSFUL;

d.审计删除表的操作(限制:只审计删除成功的情况)

AUDITDELETEANYTABLEWHENEVERSUCCESSFUL;

e.审计删除表的操作(限制:同一个会话中相同的操作语句只审计一次)

AUDITDELETEANYTABLEBYSESSION;

(注:对于这种情况,如果审计记录被设定为存储在外部文件中时,这个效果是体现不出来的,因为oracle无法判断是否已经审计过相同的操作语句。)

f.审计删除表的操作(限制:每支删除语句都审计,不论同一会话中是否有多条相同的操作语句)

AUDITDELETEANYTABLEBYACCESS;

g.审计对fey.employee表的delete操作

AUDITDELETEONfey.employee;

h.审计对fey.employee表的deleteupdetinsert操作

AUDITDELETE,UPDATE,INSERTONfey.employee;

 

八、停止审计

停止审计使用NOAUDIT语句,该语句的语法请参考oracle官方SQL参考。下面以实例说明NOAUDIT的使用:

a.停止所有对会话的创建与结束的审计

NOAUDITSESSION;

b.停止对用户fey,scott的会话的创建与结束的审计

NOAUDITSESSIONBYfey,scott;

c.停止审计删除表的操作

NOAUDITDELETEANYTABLE;

c.停止审计删除表的操作(限制:停止审计删除失败的情况)

NOAUDITDELETEANYTABLEWHENEVERNOTSUCCESSFUL;

d.停止审计删除表的操作(限制:停止审计删除成功的情况)

NOAUDITDELETEANYTABLEWHENEVERSUCCESSFUL;

g.停止审计对fey.employee表的delete操作

NOAUDITDELETEONfey.employee;

h.停止审计对fey.employee表的deleteupdetinsert操作

NOAUDITDELETE,UPDATE,INSERTONfey.employee;

<p class="MsoNormal" style="text-align: le

分享到:
评论

相关推荐

    Oracle数据库审计功能的安全审计获取技术.doc

    Oracle数据库审计功能的安全审计获取技术是确保数据库系统安全性和合规性的重要手段。Oracle数据库提供了强大的审计功能,可以跟踪和记录数据库的活动,以便于监控潜在的安全威胁、合规性问题以及性能瓶颈。本文将...

    基于关联规则挖掘的Oracle数据库审计分析系统的设计.pdf

    【总结】文章通过将关联规则挖掘应用于Oracle数据库审计,提出了一个强化安全性的审计分析系统,旨在提高对数据库安全威胁的预防和响应能力。这一方法对于提升企业级数据库的安全性具有重要的实践意义。

    Oracle数据库审计方法的探讨.pdf

    【Oracle数据库审计方法的探讨】 Oracle数据库作为一款广泛使用的大型关系型数据库系统,其审计功能是数据安全管理的重要组成部分。审计技术能够记录并分析数据库的活动,确保数据的完整性和安全性,防止非法访问和...

    oracle数据库审计

    ### Oracle数据库审计详解 #### 一、Oracle数据库审计概述 Oracle数据库审计功能是数据库安全机制的重要组成部分之一,它主要用于监控用户对数据库的操作行为,并记录这些操作以便后续进行审查和分析。通过启用...

    基于Oracle数据库安全审计方法的研究.pdf

    在实施Oracle数据库审计时,需要注意的是,审计特性默认是关闭的,如果需要开启审计功能,管理员需要设置audit_trail参数的值,这可以通过管理控制台实现,也可以通过修改初始化参数文件init.ora来完成。 Oracle 11...

    查看登录oracle数据库用户记录.docx

    "查看登录 Oracle 数据库用户记录" Oracle 数据库是一个强大的关系型数据库管理系统,提供了强大的数据存储和管理功能。为了管理和监控数据库的访问情况,需要对登录 Oracle 数据库的用户记录进行跟踪和查看。本文...

    Oracle数据库体系结构( 中文详细版)

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统之一,其强大的功能和稳定性使其在企业级应用中占据了重要地位。本文将详细解析Oracle数据库的体系结构,帮助读者深入理解其内部工作原理。 Oracle数据库的...

    ORACLE数据库 ORACLE数据库

    Oracle数据库是全球最广泛使用的商业关系型数据库管理系统之一,由美国甲骨文公司(Oracle Corporation)开发和维护。Oracle数据库以其高效、稳定和强大的功能在金融、电信、医疗、政府等多个领域得到广泛应用。本篇...

    Oracle数据库系统应用与开发

    Oracle数据库提供了多种安全特性,如用户权限管理、审计、加密等。了解如何设置和管理这些安全机制对于保护敏感数据至关重要。 十、Oracle在Web应用中的集成 Oracle可以与各种Web应用框架(如Java EE、.NET等)无缝...

    Oracle数据库资料大全

    Oracle数据库是全球最广泛使用的商业关系型数据库管理系统之一,由美国甲骨文公司(Oracle Corporation)开发和维护。Oracle数据库以其高效、稳定和强大的功能在金融、电信、医疗、政府等多个领域得到广泛应用。本...

    Oracle安全审计技术设计

    Oracle数据库自身没有针对安全审计数据的分析工具,为了改进与完善Oracle当前安全审计机制,采用了数据挖掘技术,将数据挖掘技术应用至Oracle数据库安全审计中来,对数据库的记录特点进行分析,通过审计记录的分析,提出了...

    Oracle数据库安全配置基线.pdf

    2. 数据库审计谋略:设定数据库审计谋略,确保数据库的安全性。 五、其余配置 其余配置是 Oracle 数据库安全配置基线的重要组成部分。其余配置基线要求项包括: 1. 设置监听器密码:设置监听器密码,防止未经授权...

    Oracle 数据库设计开发规范

    在 Oracle 数据库设计开发规范中,数据库安全包括了用户权限的分配、数据加密、审计和日志记录等方面的规定。这些规定可以确保整个系统的安全性和可靠性。 在数据库开发阶段,需要遵守一些基本的原则和规则,如遵守...

    Abp项目模板使用Oracle数据库

    在这个“Abp项目模板使用Oracle数据库”的场景中,开发者已经将Abp框架与Oracle 11g数据库集成,以便利用Oracle的强大功能来存储和管理应用程序的数据。Abp.Zero是Abp框架的一个子模块,主要关注多层架构中的基础...

    oracle开启audit(审计)

    在Oracle数据库管理中,开启Audit(审计)是一项重要的安全措施,用于跟踪和记录用户活动、权限使用情况以及系统操作,以增强安全性并满足合规性要求。本文将深入探讨如何在Oracle环境中配置和使用Audit功能,包括...

    oracle数据库操作手册

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其强大的功能和稳定性使其在企业级应用中占据了重要地位。本操作手册将深入探讨Oracle数据库的核心概念、安装配置、管理维护以及SQL查询等多个方面,帮助...

    Unix和Linux下的Oracle数据库管理

    在IT领域,Unix和Linux操作系统是企业级Oracle数据库服务器的常用平台。Oracle数据库管理系统是全球最广泛使用的数据库系统之一,尤其在大型企业和金融机构中。本文将深入探讨在Unix和Linux环境下如何有效地管理和...

    Oracle数据库实用教程

    Oracle数据库实用教程主要涵盖了Oracle数据库系统的基础知识、安装配置、数据管理、SQL查询、数据库安全性、性能优化以及备份恢复等多个方面。以下是对这些知识点的详细解释: 1. **Oracle数据库介绍**:Oracle...

    Oracle数据库系统安全加固规范

    Oracle数据库系统安全加固规范 Oracle数据库系统安全基线规范是为了确保Oracle数据库系统的安全运行,防止未经授权的访问、数据泄露和破坏。以下是该规范的知识点总结: 账号管理 账号管理是Oracle数据库系统安全...

Global site tag (gtag.js) - Google Analytics