Oracle 11g数据库审计

问题描述:   

        使用Oracle 11g的数据库审计

问题解决:

(1)激活数据库审计

(1.1)查看数据库审计是否已经开启

clipboard

如上图所示:首先使用用户登陆sqplus,(普通用户,或者dba都可以),然后使用conn /as sysdba

注意:

       (a)以上使用sqlplus可以成功进行数据库审计的命令操作,但是在使用PL/SQL Developer command line进行数据库审计操作时,有些命令无法识别例如shutdown  immediate (重启数据库)

       (b)以上使用conn / as sysdba 进行数据库登陆,使用其他用户登陆进行数据库审计操作时不起作用的

(1.2)查看数据库审计是否已经开启

clipboard

如上所示,使用 show parameter audit ;可以查看数据库审计的信息

其中audit_sys_operations  的value为false,意味着数据库审计未开启

其中audit_trail 的value为DB

参数详解:

        AUDIT_TRAIL启用或禁用数据库审计。当设置该参数为NONE或FALSE时,将禁止数据库审计;当设置该参数为OS时,将激活数据库审计,并将审计记录写入到OS审计跟踪文件中;当设置该参数为DB或TRUE时,将激活数据库审计,并将审计记录写入到数据字典SYS.AUD$中;当设置该参数为DB_EXTENDED时,不仅将审计记录写入到数据字典SYS.AUD$中,还会填充该数据字典的SQLBIND和SQLTEXT列。

(1.3)激活数据库审计

clipboard

如上所示修改系统信息,激活数据库审计

参数详解:

spfile是存储初始化参数的文件,还有一种是pfile也是存储初始化参数的文件,spfile是服务器端维护的,pfile是客户端维护的spfile只能通过系统更改,pfile可以手动修改。

(1.4)重启数据库-----应用对系统的修改

重新查看审计的信息

clipboard

如上显示了audit_sys_operations 的值为true,同时audit_trail 的值为db_extended说明数据库审计已经激活

注意:

        以上重新启动数据库使用了startup force 命令,同时也可以分别使用:

shutdown  immediate ;        关闭数据库

startup;                                启用数据库

(2)使用审计信息

    注意:   

            (a) 审计一般只用于对普通用户操作,一般不审计SYS用户

(b) 对于windows系统,对sys用户的审计信息并不存在AUDIT_FILE_DEST参数指定的目录里,而是在windows的事件管理器中。

clipboard

    上图显示了,Oracle中dba的审计记录存在于Windows的事件管理器中,可以通过右键查看

我的电脑----管理    就可以打开计算机管理菜单,就能查看对于dba的审计记录

clipboard

如上图所示:

使用dba登陆之后,进行表admin.selectiveinfo表格的审计记录,

    使用普通用户(非dba)登陆之后,进行admin.selectiveinfo的数据操作

    使用dba登陆,查看审计记录

clipboard

如上图所示,指出了查询审计的记录的方法,查看表dba_audit_trail 可以查看所有用户的审计记录,这里进行了筛选只选出了用户luosongchao的审计记录

(3)取消对某个表或者某个用户的审计记录

clipboard

如上图所示为取消用户luosongchao对于任何表的select审计记录

原文地址:https://www.cnblogs.com/luosongchao/p/3064667.html