三、语句审计:
语句审计选项包括:
/*
语句审计选项 触发SQL语句
alter sequence alter sequence
alter tablealter table
comment tablecomment on table、comment on column
database linkcreate database link、drop database link
delete tabledelete
execute procedure执行任意一个过程、函数或对一个报中的任意一个游标或变量的访问
grant procedureone function or package or grant on procedure
grant sequencea grant on sequence(一个序列上的grant)
grant tablegrant of one table or view (一个表或视图上的grant)
indexcreate index
insert tableinsert of table or view(表或视图上的insert)
lock tablelock
not existsall sql(所有的SQL语句)
procedurecreate function;drop function;create package; create package body;
drop package;create procedure;drop procedure;
profilecreate profile;alter profile;drop profile;
rolecreate role;alter role;drop role; set role;
select sequenceselect of a sequence(一个序列上的select)
select tableselect from table or view(从表或视图上的select)
sequencecreate sequence; drop sequence
sessionlogon
synonymcreate synonym;drop synonym;
system auditaudit;noaudit
system grantgrant; revoke
tablecreate table;drop table; truncate table
tablespacecreate tablespace; alter tablespace; drop tablespace
triggercreate trigger;alter trigger;alter table;
update tableupdate of a table or view(一个表或视图上的update)
usercreate user; alter user; drop user;
view create view; drop view
*/
-- 3.1 查看数据库中已经启用审计的选项
SQL> select user_name, audit_option, success, failure
2 from dba_stmt_audit_opts;
未选定行
SQL> audit table;
审计已成功。
SQL> select user_name, audit_option, success, failure from dba_stmt_audit_opts;
USER_NAME AUDIT_OPTION
------------------------------ ---------------------------------------
SUCCESS FAILURE
---------- ----------
TABLE
BY ACCESS BY ACCESS
-- 3.2 启用指定语句审计
SQL> audit table;
审计已成功。
-- 3.3 启用指定用户审计
SQL> show parameters audit_trail
NAME TYPE VALUE
------------------------------------ ----------- ---------------
audit_trail string DB
SQL> audit table by scott;
审计已成功。
-- 3.4 启用针对用户失败时的审计
SQL> audit table by scott whenever not successful;
审计已成功。
SQL> select user_name, audit_option, success, failure from dba_stmt_audit_opts;
USER_NAME AUDIT_OPTION SUCCESS FAILURE
------------------------------ ---------------------------------------- ---------- ----------
SCOTT TABLE NOT SET BY ACCESS
-- 3.5 启用针对用户成功时的审计
SQL> audit table by scott whenever successful;
SQL> select user_name, audit_option, success, failure from dba_stmt_audit_opts;
USER_NAME AUDIT_OPTION SUCCESS FAILURE
------------------------------ ---------------------------------------- ---------- ----------
SCOTT TABLE BY ACCESS NOT SET
-- 3.6 启用非DDL审计
SQL> select user_name, audit_option, success, failure from dba_stmt_audit_opts;
USER_NAME AUDIT_OPTION SUCCESS FAILURE
------------------------------ ---------------------------------------- ---------- ----------
SQL> audit insert table by scott by access;
Audit succeeded
SQL> conn scott/tiger
Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.1.0
Connected as scott
SQL> create table t1
2 (sid int);
Table created
SQL> insert into t1 values (1001);
1 row inserted
SQL> select * from t1;
SID
---------------------------------------
1001
SQL> update t1 set sid=2003 where sid=1001;
1 row updated
SQL> delete from t1;
1 row deleted
SQL> conn sys as sysdba
Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.1.0
Connected as SYS
SQL> select user_name, audit_option, success, failure from dba_stmt_audit_opts;
USER_NAME AUDIT_OPTION SUCCESS FAILURE
------------------------------ ---------------------------------------- ---------- ----------
SCOTT INSERT TABLE BY ACCESS BY ACCESS
-- 3.7 关闭语句审计
SQL> noaudit table;
审计未成功。
SQL> noaudit insert table by scott;
Noaudit succeeded
----------------------------------------------------------------------------------------
****************************************************************************************
四、管理特权审计:
****************************************************************************************
----------------------------------------------------------------------------------------
管理特权审计包括监视和记录需要一个指定系统特权的SQL语句的执行;可以审计任意一个系统特权。
-- 4.1 启用审计特权
SQL> audit create any table;
Audit succeeded
-- 4.2 审计具体用户
/*
环境准备:
create user win identified by password
quota 100m on users;
grant create session, create table to win;
*/
--步骤1:检查已经启用特权审计
SQL> select user_name, privilege, success, failure from dba_priv_audit_opts ;
USER_NAME PRIVILEGE SUCCESS FAILURE
------------------------------ ---------------------------------------- ---------- ----------
--步骤2:启用特权审计
SQL> audit select any table by scott by access;
Audit succeeded
--步骤3:检查已经启用特权审计
SQL> select user_name, privilege, success, failure from dba_priv_audit_opts ;
USER_NAME PRIVILEGE SUCCESS FAILURE
------------------------------ ---------------------------------------- ---------- ----------
SCOTT SELECT ANY TABLE BY ACCESS BY ACCESS
--步骤4:连接到scott账户操作
SQL> conn scott/tiger
已连接。
SQL> select * from win.accp;
TID
----------
1001
--步骤5:检查审计跟踪
SQL> select username, to_char(timestamp,'yyyy:mm:dd:hh'), action_name
from dba_audit_trail where username= 'SCOTT';
USERNAME TIME ACTION_NAME
------------------------------ ------------- ----------------------------
SCOTT 2008:10:29:01 SELECT
--步骤6:清空审计记录
SQL> delete from sys.aud$ ;
分享到:
相关推荐
详细分析Oracle审计功能,详细分析Oracle审计功能
为了改进与完善Oracle当前安全审计机制,采用了数据挖掘技术,将数据挖掘技术应用至Oracle数据库安全审计中来,对数据库的记录特点进行分析,通过审计记录的分析,提出了在序列模式挖掘及关联规则2种技术基础上,建立用户...
unified auditing ,oracle 12c 以后开启归档的方法。包括了开启,关闭,rman,DML审计
oracle开启audit(审计)的详细过程.
审计(Audit)用于监视用户所执行的数据库操作,并且Oracle会将审计跟踪结果存放到OS文件(默认位置为$ORACLE_BASE/admin/$ORACLE_SID/adump/)或数据库(存储在system表空间中的SYS.AUD$表中,可通过视图dba_audit_...
Oracle数据库审计
Oracle数据库审计功能的安全审计获取技术.doc
Oracle审计功能,有利于你对审计功能的了解
EBS自带审计功能,审计功能是记录系统使用者的操纵记录,例如什么时间对哪张表的那个的字段做了修改、删除等操作,审计功能都会记录相应的时间、修改者、修改前该字段的值。在实际业务中对一些敏感信息(例如订单行...
Oracle审计功能,审计是对选定的用户动作的监控和记录。
Oracle_授权审计表Truncate权限
Oracle审计功能解读,用于记录数据库中表的数据变化,如增、删除、改、查等操作记录。可以记录对数据库对象的所有操作。什么时候,什么用户对什么对象进行了什么类型的操作。
oracle 审计功能说明,word文档
利用Oracle审计功能记录数据库操作.doc
oracle对某表进行审计,观察对这个表的增删改查等sql操作
管理信息化ORACLEOracle审计手册.pdf
oracle的登录、登出触发器(时间、来访ip、用户信息、sid等等),ddl操作记录触发器(含create、drop、alter、truncate等),都属于事后触发,不影响业务操作
审计(Audit)用于监视用户所执行的数据库操作,并且Oracle会将审计跟踪结果存放到OS文件(默认位置为$ORACLE_BASE/admin/$ORACLE_SID/adump/)或数据库(存储在system表空间中的 SYS.AUD$表中,可通过视图dba_audit_...
操作系统文件提供比SYS.AUD$表更强大的安全性,特别是在希望阻止数据库管理员查看或修改审计跟踪的情况下。即使关闭数据库实例,仍然可以继续使用保存在数据库外的审计日志,但还是可以通过一个新的视图,V$XML_...
Oracle安全设置Oracle安全设置Oracle安全设置Oracle安全设置Oracle安全设置