oracle开启audit(审计)

更新时间:2023-06-30 19:33:44 阅读: 评论:0

oracle开启audit(审计)1、查看审计功能是否开启(本机已经开启,如果audit_sys_operations值为FALSE就是没开审计)
SQL> CONN /AS SYSDBA
SQL> show parameter audit
NAME                                TYPE        VALUE
------------------------------------ ----------- ------------------------------
audit_file_dest                      string      F:\APP\ADMINISTRATOR\ADMIN\ORCL\ADUMP
audit_sys_operations                boolean    TRUE
audit_trail                          string      DB_EXTENDED
如果没有使⽤下⾯语句更改:
SQL> alter system t audit_trail=db_extended scope=spfile;
注意audit_trail要为DB_EXTENDED才记录执⾏的具体语句...
2、重启实例
SQL> shutdown immediate;
SQL> startup
3、针对某表的DML审计(错误的也记录)
SQL> AUDIT UPDATE,DELETE,INSERT ON T_TEST by access;
4、对该表做各种DML操作
⽤scott⽤户登录
SQL> conn scott/123
SQL> create table t_test as lect * from emp;
SQL> update t_test t emp1='111';
*
第 1 ⾏出现错误:
ORA-00904: "EMP1": 标识符⽆效
SQL> delete from t_test where rownum=1;
已删除 1 ⾏。
SQL> commit;
5、查询审计信息
SQL> lect EXTENDED_TIMESTAMP,SESSION_ID,SQL_TEXT
SQL> from DBA_COMMON_AUDIT_TRAIL ORDER BY EXTENDED_TIMESTAMP DESC;
或者
SQL> lect EXTENDED_TIMESTAMP,SESSION_ID,SQL_TEXT from DBA_COMMON_AUDIT_TRAIL
铃川玲理
SQL> where OBJECT_NAME='T_TEST'
SQL> and STATEMENT_TYPE in ('INSERT','UPDATE','DELETE');
---结果:
SQL> /
EXTENDED_TIMESTAMP                      SESSION_ID SQL_TEXT
---------------------------------------- ---------- ----------------------------
------------
14-8⽉ -12 04.14.45.187000 下午 +08:00      190125 update t_test t emp1='111'
14-8⽉ -12 04.26.02.968000 下午 +08:00      190125 delete from t_test where rownum=1
注意:审计⼀般只⽤于对普通⽤户操作,⼀般不审计SYS⽤户
对于windows系统,对sys⽤户的审计信息并不存在AUDIT_FILE_DEST参数指定的⽬录⾥,⽽是在windows的事件管理器中。---------------------------------------------------------------------------------------------------------------------
另外通过细粒度审计FGA也可以实现上述审计:
⽤法创建审计策略:
岗位履职情况
Syntax
DBMS_FGA.ADD_POLICY(
南翔古猗园
object_schema  VARCHAR2,
大辣椒炒肉object_name    VARCHAR2,
policy_name    VARCHAR2,
audit_condition VARCHAR2,
audit_column    VARCHAR2,
handler_schema  VARCHAR2,
handler_module  VARCHAR2,
enable          BOOLEAN  );
删除审计策略:
DBMS_FGA.DROP_POLICY(
object_schema  VARCHAR2,
object_name    VARCHAR2,
policy_name    VARCHAR2 );
启⽤审计策略:
DBMS_FGA.ENABLE_POLICY(
object_schema  VARCHAR2 := NULL,
object_name    VARCHAR2,走读申请书怎么写
policy_name    VARCHAR2,
enable        BOOLEAN := TRUE);
禁⽤审计策略:
DBMS_FGA.DISABLE_POLICY(
object_schema  VARCHAR2,
object_name    VARCHAR2,
policy_name    VARCHAR2 );
⾸先,创建审计策略
SQL> conn /as sysdba
已连接。
SQL> begin
2  dbms_fga.add_policy
3  (
美丽母亲的哀羞4  object_schema=>'SCOTT',object_name=>'T_TEST',
5  policy_name=>'Test_audit'
6  );
7  end;
张杰是哪里人
8  /
PL/SQL 过程已成功完成。
SQL> conn scott/tigger
进⾏查询
SQL> lect ename from t_test;
使⽤SYS登录进⾏查询,
SQL> lect statement_type,SQL_TEXT from dba_fga_audit_trail;
STATEME SQL_TEXT
------- ----------------------------------------
厚底拖鞋
SELECT  lect ename from t_test
------------
注意: 经过测试发现审计到的SQL语句存在着⼤⼩写2种格式。
直接执⾏的SQL语句,是什么样的语句,审计到的也就是什么样。
在存储⾥执⾏的语句,审计到的全是⼤写的语句。
存储⾥动态执⾏的语句,是什么样的语句,审计到的也就是什么样的语句。
BEGIN
EXECUTE immediate 'delete FrOm emp WHERE ROWNUM=1';
END;
审计到的就是
DELETE delete FrOm emp WHERE ROWNUM=1;

本文发布于:2023-06-30 19:33:44,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/1062005.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

下一篇:AUDIT方法
标签:审计   语句   策略   错误   查看
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图