solaris10_audit_相關_轉載

wisdomone1發表於2009-09-07

幾分鐘學會Oracle Audit

/  2007-11-29 00:00:00 / 個人分類:Oracle

/ /

1、什麼是審計

簡單來講,就是把對資料庫的操作記錄下來。不管你是否開啟資料庫的審計功能,以下這些作業系統會強制記錄。

l 用管理員許可權連線Instance

l 啟動資料庫

l 關閉資料庫

2、和審計相關的兩個主要引數

Audit_sys_operations

預設為false,當設定為true時,所有(注意是所有!)sys使用者(包括以sysdba,sysoper身份登入的使用者)的操作都會被記錄,audit trail不會寫在aud$表中,這個很好理解,如果資料庫還未啟動aud$不可用,那麼像conn /as sysdba這樣的連線資訊,只能記錄在其它地方。如果是windows平臺,audti trail會記錄在windows的事件管理中,如果是linux/unix平臺則會記錄在audit_file_dest引數指定的檔案中

Audit_trail

有三個取值

None :預設值,不做審計

DB :將audit trail 記錄在資料庫的審計相關表中,如aud$

OS :將audit trail 記錄在作業系統檔案中,檔名由audit_file_dest引數指定

注:這兩個引數是static引數,需要重新啟動資料庫才能生效。

ITPUB個人空間WQ6^Z'tF

3、審計級別

當開啟審計功能後(audit_trail=DB/OS),可在三個級別對資料庫進行審計:Statement(語句) Privilege(許可權)、object(物件)

Statement

按語句來審計,比如audit table 會審計資料庫中所有的create table,drop table,truncate table語句,alter session by cmy會審計cmy使用者所有的資料庫連線。

Privilege

按許可權來審計,當使用者使用了該許可權則被審計,如執行grant select any table to a; audit select any table;語句後,當使用者a 訪問了使用者b的表時(如select * from b.t;)會用到select any table許可權,故會被審計。注意使用者是自己表的所有者,所以使用者訪問自己的表不會被審計

Object

按物件審計,只審計on關鍵字指定物件的相關操作,如aduit alter,delete,drop,insert on cmy.t by scott; 這裡會對cmy使用者的t表進行審計,但同時使用了by子句,所以只會對scott使用者發起的操作進行審計.注意Oracle沒有提供對schema中所有物件的審計功能,只能一個一個物件審計,對於後面建立的物件,Oracle則提供on default子句來實現自動審計,比如執行audit drop on default by access;後, 對於隨後建立的物件的drop操作都會審計。但這個default會對之後建立的所有資料庫物件有效,似乎沒辦法指定只對某個使用者建立的物件有效,想比trigger可以對schemaDDL進行“審計”,這個功能稍顯不足。

4、審計的一些其他選項

by access / by session by access 每一個被審計的操作都會生成一條audit trail by session,一個會話裡面同型別的操作只會生成一條audit trail 預設為by session

whenever [ not ] successful whenever successful 操作成功(dba_audit_trailreturncode欄位為0) 才審計,whenever not successful反之。 省略該子句的話,不管操作成功與否都會審計。

5、和審計相關的檢視

dba_audit_trail

儲存所有的audit trail,實際上它只是一個基於aud$的檢視。其它的檢視dba_audit_session,dba_audit_object,dba_audit_statement都只是dba_audit_trail的一個子集。

dba_stmt_audit_opts

可以用來檢視statement審計級別的audit options,即資料庫設定過哪些statement級別的審計。dba_obj_audit_opts,dba_priv_audit_opts檢視功能與之類似

all_def_audit_opts

用來檢視資料庫用on default子句設定了哪些預設物件審計。

6、取消審計

將對應審計語句的audit改為noaudit即可,如audit session whenever successful;取消審計noaudit session whenever successful;

不再贅述。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9240380/viewspace-614068/,如需轉載,請註明出處,否則將追究法律責任。

相關文章