Oracle audit_sys_operations参数详解

 

1 定义

audit_sys_operations审计SYSDBA的活动。默认值是false。相关的审计信息不会记录在aud$中,因为有可能此时数据库还未启动,只能记录在操作系统层面的文件中。默认为false,不意味着没有审计信息,像conn / as sysdba这样的操作仍然会被记录。audit_file_dest参数指定的审计信息的文件夹。

 

将audit_sys_operations设置成true后,那么做为sysdba或sysoper连接数据库的用户所发布的每条语句都会被写入操作系统的审计中,从而能够给出DBA所进行操作的完整记录。

2 实验

audit_sys_operations设置成true。要重启数据库。

2.1 Select操作

SQL> select * from scott.emp;                       

 

[oracle@cent4 adump]$ ll -t

总用量 572

-rw-r-----  1 oracle oinstall  1935 10月 26 21:39 ora_3600.aud

-rw-r-----  1 oracle oinstall 51892 10月 26 21:38 ora_3821.aud

……

[oracle@cent4 adump]$ cat ora_3600.aud

……

Wed Oct 26 21:39:04 2011

ACTION : 'select * from scott.emp'

DATABASE USER: '/'

PRIVILEGE : SYSDBA

CLIENT USER: oracle

CLIENT TERMINAL: pts/1

STATUS: 0

 

2.2 show parameter操作

SQL> show parameter audit

NAME                          TYPE        VALUE

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

audit_file_dest               string      /u01/app/oracle/admin/ltest/adump

audit_sys_operations          Boolean     TRUE

audit_syslog_level            string

audit_trail                   string      DB, EXTENDED

 

……

Wed Oct 26 21:41:26 2011

ACTION : 'SELECT NAME NAME_COL_PLUS_SHOW_PARAM,DECODE(TYPE,1,'boolean',2,'string',3,'integer',4,'file',5,'number',        6,'big integer', 'unknown') TYPE,DISPLAY_VALUE VALUE_COL_PLUS_SHOW_PARAM FROM V$PARAMETER WHERE UPPER(NAME) LIKE UPPER('%audit%') ORDER BY NAME_COL_PLUS_SHOW_PARAM,ROWNUM'

DATABASE USER: '/'

PRIVILEGE : SYSDBA

CLIENT USER: oracle

CLIENT TERMINAL: pts/1

STATUS: 0

 

可以从trace中看到,show parameter audit语句而是显示其原始语句,如下:

 

select name name_col_plus_show_param,

       decode(type,

              1,

              'boolean',

              2,

              'string',

              3,

              'integer',

              4,

              'file',

              5,

              'number',

              6,

              'big integer',

              'unknown') type,

       display_value value_col_plus_show_param

  from v$parameter

 where upper(name) like upper('%audit%')

 order by name_col_plus_show_param, rownum;


你可能感兴趣的:(Oracle audit_sys_operations参数详解)