程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Oracle中審計參數audit_trail的討論

Oracle中審計參數audit_trail的討論

編輯:Oracle數據庫基礎

近日,逐步開始課題的研究。具體內容可以參考《我的課題》欄目下的內容,那裡涉及了課題的主要研究內容。

目前仍在探索階段,尤其是對oracle的認識,也在隨著不斷地學習在逐步加深。課題的題目是《安全審計技術在電子政務中的應用研究》,其中一個重要的內容就是利用Oracle 9i提供的審計功能,來與應用層的審計相配合。

初期的想法,一直想在應用系統層提供一個接口——審計的開/關。即可以允許在應用系統級打開或者關閉數據庫的審計功能,但是,嘗試了幾天,得到的結論似乎是:audit_trail參數,是非動態修改參數,也就是說,通過alter system修改時,只能加上scope=spfile,那麼也就是說,如果要開啟/關閉審計功能,一定要重啟數據庫。。。。

如果是這樣的話,自然就不能靈活開/關審計功能,也就沒辦法提供給應用系統層一個真正有價值的開/關接口。因為每次都需要重新啟動數據庫,這對應用系統的運行是有很大影響的。

下面是我在Oracle 10g中試驗的結果(因為9i中總是在關閉後再啟動的時候出現錯誤,具體原因未明了……),我想,10g尚且如此,那9i肯定也沒戲了……

--先顯示一下當前的audit_trail參數值

SQL> show parameter audit_trail
NAME                                 TYPE        VALUE
audit_trail                          string      DB

--修改audit_trail參數值

SQL> alter system set audit_trail='FALSE';
alter system set audit_trail='FALSE'

ERROR at line 1:
ORA-02095: specified initialization parameter cannot be modifIE

SQL> alter system set audit_trail='FALSE' scope = both;
alter system set audit_trail='FALSE' scope = both

ERROR at line 1:
ORA-02095: specified initialization parameter cannot be modifIE

--只能修改到spfile

SQL> alter system set audit_trail='FALSE' scope=spfile;

System altered.

--顯示audit_trail參數值,說明當前實例未更改

SQL> show parameter audit_trail
NAME                                 TYPE        VALUE
audit_trail                          string      DB

SQL> shutdown normal
ORA-01031: insufficIEnt privileges
SQL> conn / as sysdba;
Connected.
SQL> shutdown normal;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup 
Oracle instance started.
Total System Global Area  171966464 bytes
Fixed Size                   787988 bytes
Variable Size             144964076 bytes
Database Buffers           25165824 bytes
Redo Buffers                1048576 bytes
Database mounted.
Database opened.

--重新啟動後,audit_trail參數值已經更改……

SQL> show parameter audit_trail;
NAME                                 TYPE        VALUE
audit_trail                          string      FALSE

這裡僅僅對一個審計參數的初始化和修改進行了說明,路過的如果有Oracle的高手們,是如何操作的,使之能夠實現動態修改呢,或者有沒有別的方案實現審計,而不是每次都需要重新啟動數據庫……。不吝指教……呵呵

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved