利用Oracle審計功能記錄數(shù)據(jù)庫操作_第1頁
利用Oracle審計功能記錄數(shù)據(jù)庫操作_第2頁
利用Oracle審計功能記錄數(shù)據(jù)庫操作_第3頁
利用Oracle審計功能記錄數(shù)據(jù)庫操作_第4頁
利用Oracle審計功能記錄數(shù)據(jù)庫操作_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、1、什么是審計審計(Audit)用于監(jiān)視用戶所執(zhí)行的數(shù)據(jù)庫操作,并且Oracle會將審計跟蹤結(jié)果存放到OS文件(默認位置為$ORACLE_BASE/admin/$ORACLE_SID/adump/)或數(shù)據(jù)庫(存儲在system表空間中的SYS.AUD$表中,可通過視圖dba_audit_trail查看)中。默認情況下審計是沒有開啟的。不管你是否打開數(shù)據(jù)庫的審計功能,以下這些操作系統(tǒng)會強制記錄:用管理員權(quán)限連接Instance;啟動數(shù)據(jù)庫;關(guān)閉數(shù)據(jù)庫。2、和審計相關(guān)的兩個主要參數(shù)Audit_sys_operations:默認為false,當(dāng)設(shè)置為true時,所有sys用戶(包括以sysdba,s

2、ysoper身份登錄的用戶)的操作都會被記錄,audit trail不會寫在aud$表中,這個很好理解,如果數(shù)據(jù)庫還未啟動aud$不可用,那么像conn /as sysdba這樣的連接信息,只能記錄在其它地方。如果是windows平臺,audti trail會記錄在windows的事件管理中,如果是linux/unix平臺則會記錄在audit_file_dest參數(shù)指定的文件中。Audit_trail:None:是默認值,不做審計;DB:將audit trail 記錄在數(shù)據(jù)庫的審計相關(guān)表中,如aud$,審計的結(jié)果只有連接信息;DB_Extended:這樣審計結(jié)果里面除了連接信息還包含了當(dāng)時執(zhí)行

3、的具體語句;OS:將audit trail 記錄在操作系統(tǒng)文件中,文件名由audit_file_dest參數(shù)指定;XML:10g里新增的。注:這兩個參數(shù)是static參數(shù),需要重新啟動數(shù)據(jù)庫才能生效。3、審計級別當(dāng)開啟審計功能后,可在三個級別對數(shù)據(jù)庫進行審計:Statement(語句)、Privilege(權(quán)限)、object(對象)。Statement:按語句來審計,比如audit table 會審計數(shù)據(jù)庫中所有的create table,drop table,truncate table語句,alter session by cmy會審計cmy用戶所有的數(shù)據(jù)庫連接。Privilege:按權(quán)

4、限來審計,當(dāng)用戶使用了該權(quán)限則被審計,如執(zhí)行g(shù)rant select any table to a,當(dāng)執(zhí)行了audit select any table語句后,當(dāng)用戶a 訪問了用戶b的表時(如select * from b.t)會用到select any table權(quán)限,故會被審計。注意用戶是自己表的所有者,所以用戶訪問自己的表不會被審計。Object:按對象審計,只審計on關(guān)鍵字指定對象的相關(guān)操作,如aduit alter,delete,drop,insert on cmy.t by scott; 這里會對cmy用戶的t表進行審計,但同時使用了by子句,所以只會對scott用戶發(fā)起的操作進行

5、審計。注意Oracle沒有提供對schema中所有對象的審計功能,只能一個一個對象審計,對于后面創(chuàng)建的對象,Oracle則提供on default子句來實現(xiàn)自動審計,比如執(zhí)行audit drop on default by access;后, 對于隨后創(chuàng)建的對象的drop操作都會審計。但這個default會對之后創(chuàng)建的所有數(shù)據(jù)庫對象有效,似乎沒辦法指定只對某個用戶創(chuàng)建的對象有效,想比trigger可以對schema的DDL進行“審計”,這個功能稍顯不足。4、審計的一些其他選項by access / by session:by access 每一個被審計的操作都會生成一條audit trail。

6、 by session 一個會話里面同類型的操作只會生成一條audit trail,默認為by session。whenever not successful:whenever successful 操作成功(dba_audit_trail中returncode字段為0) 才審計,whenever not successful 反之。省略該子句的話,不管操作成功與否都會審計。5、和審計相關(guān)的視圖dba_audit_trail:保存所有的audit trail,實際上它只是一個基于aud$的視圖。其它的視圖dba_audit_session,dba_audit_object,dba_audit_

7、statement都只是dba_audit_trail的一個子集。dba_stmt_audit_opts:可以用來查看statement審計級別的audit options,即數(shù)據(jù)庫設(shè)置過哪些statement級別的審計。dba_obj_audit_opts,dba_priv_audit_opts視圖功能與之類似all_def_audit_opts:用來查看數(shù)據(jù)庫用on default子句設(shè)置了哪些默認對象審計。6、取消審計將對應(yīng)審計語句的audit改為noaudit即可,如audit session whenever successful對應(yīng)的取消審計語句為noaudit session w

8、henever successful;8、實例講解8.1、激活審計sqlplus / as sysdba SQL> show parameter auditNAME TYPE VALUE- - -audit_file_dest string /u01/app/oracle/admin/ORCL/adumpaudit_sys_operations boolean FALSEaudit_syslog_level stringaudit_trail string NONESQL> alter system set audit_sys_operations=TRUE scope=spfil

9、e; -審計管理用戶(以sysdba/sysoper角色登陸)SQL> alter system set audit_trail=db_extended scope=spfile;SQL> startup force;SQL> show parameter auditNAME TYPE VALUE- - -audit_file_dest string /u01/app/oracle/admin/ORCL/adumpaudit_sys_operations boolean TRUEaudit_syslog_level stringaudit_trail string DB_EX

10、TENDED 8.2、開始審計sqlplus / as sysdba-記錄對一個表的所有操作SQL> audit all on t_test;SQL> conn u_testSQL> select * from t_test;SQL> insert into u_test.t_test (c2,c5) values ('test1','2');SQL> commit;SQL> delete from u_test.t_test;SQL> commit;SQL> conn /as sysdbaSQL> sele

11、ct OS_USERNAME,username,USERHOST,TERMINAL,TIMESTAMP,OWNER,obj_name,ACTION_NAME,sessionid,os_process,sql_bind,sql_text from dba_audit_trail;sql> audit select table by u_test by access;如果在命令后面添加by user則只對user的操作進行審計,如果省去by用戶,則對系統(tǒng)中所有的用戶進行審計(不包含sys用戶).例:AUDIT DELETE ANY TABLE; -審計刪除表的操作AUDIT DELETE A

12、NY TABLE WHENEVER NOT SUCCESSFUL; -只審計刪除失敗的情況AUDIT DELETE ANY TABLE WHENEVER SUCCESSFUL; -只審計刪除成功的情況AUDIT DELETE,UPDATE,INSERT ON user.table by test; -審計test用戶對表user.table的delete,update,insert操作8.3、撤銷審計SQL> noaudit all on t_test;9、審計語句多層環(huán)境下的審計:appserve-應(yīng)用服務(wù)器,jackson-clientAUDIT SELECT TABLE BY ap

13、pserve ON BEHALF OF jackson;審計連接或斷開連接:AUDIT SESSION;AUDIT SESSION BY jeff, lori; - 指定用戶審計權(quán)限(使用該權(quán)限才能執(zhí)行的操作):AUDIT DELETE ANY TABLE BY ACCESS WHENEVER NOT SUCCESSFUL;AUDIT DELETE ANY TABLE;AUDIT SELECT TABLE, INSERT TABLE, DELETE TABLE, EXECUTE PROCEDURE BY ACCESS WHENEVER NOT SUCCESSFUL;對象審計:AUDIT DEL

14、ETE ON jeff.emp;AUDIT SELECT, INSERT, DELETE ON jward.dept BY ACCESS WHENEVER SUCCESSFUL;取消審計:NOAUDIT session;NOAUDIT session BY jeff, lori;NOAUDIT DELETE ANY TABLE;NOAUDIT SELECT TABLE, INSERT TABLE, DELETE TABLE,EXECUTE PROCEDURE;NOAUDIT ALL; - 取消所有statement審計NOAUDIT ALL PRIVILEGES; - 取消所有權(quán)限審計NOAU

15、DIT ALL ON DEFAULT; - 取消所有對象審計10、清除審計信息DELETE FROM SYS.AUD$;DELETE FROM SYS.AUD$ WHERE obj$name='EMP'11、審計視圖STMT_AUDIT_OPTION_MAP - 審計選項類型代碼AUDIT_ACTIONS - action代碼ALL_DEF_AUDIT_OPTS - 對象創(chuàng)建時默認的對象審計選項DBA_STMT_AUDIT_OPTS - 當(dāng)前數(shù)據(jù)庫系統(tǒng)審計選項DBA_PRIV_AUDIT_OPTS - 權(quán)限審計選項DBA_OBJ_AUDIT_OPTS USER_OBJ_AUDI

16、T_OPTS ; - 對象審計選項DBA_AUDIT_TRAIL USER_AUDIT_TRAIL - 審計記錄DBA_AUDIT_OBJECT USER_AUDIT_OBJECT - 審計對象列表DBA_AUDIT_SESSION USER_AUDIT_SESSION - session審計DBA_AUDIT_STATEMENT USER_AUDIT_STATEMENT - 語句審計DBA_AUDIT_EXISTS - 使用BY AUDIT NOT EXISTS選項的審計DBA_AUDIT_POLICIES - 審計POLICIESDBA_COMMON_AUDIT_TRAIL - 標準審計+精細審計12、將審計結(jié)果表從system表空間里移動到別的表空間上實際上sys.aud$表上包含了兩個

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論