Oracle审计(Audit)监视用户所执行的数据库操作实例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Oracle审计(Audit)监视用户所执行的数据库操作:
A、审计相关的表安装:
SQL> conn sys/???? as sysdba;
SQL> select * from sys.aud$;
SQL> select * from dba_audit_trail;
如果做上述查询的时候发现表不存在,说明审计相关的表还没有安装,需要安装。
SQL> @$ORACLE_HOME/rdbms/admin/cataudit.sql
审计表安装在SYSTEM 表空间, 所以要确保SYSTEM 表空间又足够的空间存放审计信息。
B、激活审计:
SQL> show parameter audit;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
audit_file_dest string D:\APP\ADMIN\ADMIN\ORCL\ADUMP
audit_sys_operations boolean FALSE
audit_trail string DB
SQL> alter system set audit_sys_operations=TRUE scope=spfile;
System altered
SQL> alter system set audit_trail=db_extended scope=spfile;
System altered
------------------------------------------*****----------------------------------------
Audit_trail参数值:
None: 是默认值,不做审计;
DB:将audit trail记录在数据库的审计相关表中,审计的结果只有连接信息;
DB_Extended:这样审计结果里面除了连接信息还包含了当时执行的具体语句;
OS:将audit trail记录在操作系统文件中,文件名由audit_file_dest 参数指定;
XML:10g 里新增的。
------------------------------------------*****----------------------------------------
SQL> startup force;
SQL> show parameter audit;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
audit_file_dest string D:\APP\ADMIN\ADMIN\ORCL\ADUMP
audit_sys_operations boolean TRUE
audit_trail string DB_EXTENDED
C、开始审计(根据需求设定):
audit select,insert,update,delete on scott.emp by access;
D、查询结果:
SQL> select owner,obj_name,action_name,sql_text from dba_audit_trail where owner ='SCOTT' order by timestamp desc;
E、清除审计结果:
DELETE FROM SYS.AUD$ WHERE OBJ$NAME ='EMP';;
DELETE FROM dba_audit_trail WHERE owner ='SCOTT';
F、撤消设定的审计:
noaudit all on scott.emp;
G、停止审计服务:
alter system set audit_trail=NONE scope=SPFILE;