fga 例子 oracle,利用Oracle FGA实现审计
原文出處:http://blog.sina.com.cn/s/blog_3f2ef11801000aad.html
Oracle9i Database 推出了一種稱為細(xì)粒度審計(jì) (FGA) 的新特性。現(xiàn)在下面就利用FGA實(shí)現(xiàn)審計(jì)對(duì)表的審計(jì)。其中,EDMS是數(shù)據(jù)庫的一個(gè)測試帳戶。
1.?建立測試表(用戶EDMS下)
Create?Table?T_AUDIT_DEMO
(
CID?INT?NOT?NULL,
CNAME?VARCHAR2(20)?NULL,
ENAME?VARCHAR2(20)?NULL,
CONSTRAINT?PK_T_AUDIT_DEMO?PRIMARY?KEY?(CID)
);
2.?創(chuàng)建審計(jì)策略(用戶SYS下)
begindbms_fga.add_policy
(
object_schema=>'EDMS',
object_name=>'T_AUDIT_DEMO',
policy_name=>'T_AUDIT_DEMO_AUDIT');
end;
3.?測試審計(jì)效果(用戶EDMS下)
INSERT?INTO?T_AUDIT_DEMO?VALUES(1,'曾勛','ZENG XUN');
INSERT?INTO?T_AUDIT_DEMO?VALUES(2,'翁黎明','WENG LI MING');
INSERT?INTO?T_AUDIT_DEMO?VALUES(3,'劉帝勇','LIU DI YONG');
4.?使用Select查詢測試表(用戶EDMS下)
SQL> SELECT * FROM T_AUDIT_DEMO;
CID CNAMEENAME
----- -------------------- -------
1曾勛ZENG XUN
2翁黎明WENG LI MING
3劉帝勇LIU DI YONG
5.?再次查看審計(jì)效果(用戶SYS下)
SQL> select statement_type,SQL_TEXT from dba_fga_audit_trail;
STATEMENT_TYPE SQL_TEXT
-------------- -----------
SELECTSELECT * FROM T_AUDIT_DEMO
注意:之前的Insert語句并不在審計(jì)中。默認(rèn)的只對(duì)Select進(jìn)行審計(jì)。在Oracle 9i中它只捕獲 SELECT 語句。而在Oracle 10i中進(jìn)行了擴(kuò)展,支持對(duì)所有類型的DML進(jìn)行審計(jì)。
6.?修改審計(jì)粒度(用戶SYS下)
begindbms_fga.add_policy
(
object_schema=>'EDMS',
object_name=>'T_AUDIT_DEMO',
policy_name=>'T_AUDIT_DEMO_AUDIT',
statement_types=>'INSERT, UPDATE, DELETE, SELECT');
end;
注意:不能實(shí)現(xiàn)對(duì)Truncat Table的審計(jì)。
7.?測試審計(jì)(用戶EDMS、SYS下)
INSERT INTO T_AUDIT_DEMO VALUES(4,'黃智洪','HUANG ZHI HONG');
DELETE FROM T_AUDIT_DEMO WHERE CID < 4;
SQL> select statement_type,SQL_TEXT from dba_fga_audit_trail;
STATEMENT_TYPE SQL_TEXT
-------------- --------------------
SELECTSELECT * FROM T_AUDIT_DEMO
INSERTINSERT INTO T_AUDIT_DEMO VALUES(4,'黃智洪','HUANG ZHI HONG')DELETEDELETE FROM T_AUDIT_DEMO WHERE CID < 4
SELECTSELECT * FROM T_AUDIT_DEMO
至此,我們已經(jīng)實(shí)現(xiàn)了對(duì)表T_AUDIT_DEMO的審計(jì)。與FGA相關(guān)的表或者視圖:
select* from fga$
select* from fga_log$
select* from fgacol$
select * from dba_fga_audit_trail
select * from dba_common_audit_trail
select * from dba_audit_policies
select * from dba_fga_audit_trail
與FGA相關(guān)的包或者過程:
dbms_fga.add_policy
dbms_fga.drop_policy
至于這些表、視圖、包的列或者參數(shù)的使用方法,可以Describe或者查看相關(guān)文檔。
總結(jié)
以上是生活随笔為你收集整理的fga 例子 oracle,利用Oracle FGA实现审计的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle11告警日志,oracle
- 下一篇: linux下编辑某个文件,linux下修