AUDIT IN SESSION CURRENT無法NOAUDIT
前兩天看文件提到AUDIT IN SESSION CURRENT方式,無法透過NOAUDIT命令取消審計,只有使用者退出連線審計設定才自動結束。
先來看正常的審計特點:
SQL> conn yangtk/yangtk
已連線。
SQL> create table t_1 (id number);
表已建立。
SQL> select owner, obj_name, action_name
2 from user_audit_trail
3 where action_name = 'CREATE TABLE'
4 and timestamp > trunc(sysdate);
未選定行
SQL> audit create table;
審計已成功。
SQL> create table t_2 (id number);
表已建立。
SQL> select owner, obj_name, action_name
2 from user_audit_trail
3 where action_name = 'CREATE TABLE'
4 and timestamp > trunc(sysdate);
未選定行
SQL> conn yangtk/yangtk
已連線。
SQL> create table t_3 (id number);
表已建立。
SQL> select owner, obj_name, action_name
2 from user_audit_trail
3 where action_name = 'CREATE TABLE'
4 and timestamp > trunc(sysdate);
OWNER OBJ_NAME ACTION_NAME
---------- ---------- ----------------------------
YANGTK T_3 CREATE TABLE
SQL> noaudit create table;
審計未成功。
SQL> create table t_4 (id number);
表已建立。
SQL> select owner, obj_name, action_name
2 from user_audit_trail
3 where action_name = 'CREATE TABLE'
4 and timestamp > trunc(sysdate);
OWNER OBJ_NAME ACTION_NAME
---------- ---------- ----------------------------
YANGTK T_3 CREATE TABLE
YANGTK T_4 CREATE TABLE
SQL> conn yangtk/yangtk
已連線。
SQL> create table t_5 (id number);
表已建立。
SQL> select owner, obj_name, action_name
2 from user_audit_trail
3 where action_name = 'CREATE TABLE'
4 and timestamp > trunc(sysdate);
OWNER OBJ_NAME ACTION_NAME
---------- ---------- ----------------------------
YANGTK T_3 CREATE TABLE
YANGTK T_4 CREATE TABLE
這說明審計的設定和取消都只對命令發出後的會話有效,而已經在執行的會話是不受這個命令影響的。
新特性IN SESSION CURRENT方式改變了這一點,使得審計對且僅對當前會話生效:
SQL> audit create table in session current;
審計已成功。
SQL> create table t_6 (id number);
表已建立。
SQL> select owner, obj_name, action_name
2 from user_audit_trail
3 where action_name = 'CREATE TABLE'
4 and timestamp > trunc(sysdate);
OWNER OBJ_NAME ACTION_NAME
---------- ---------- ----------------------------
YANGTK T_3 CREATE TABLE
YANGTK T_4 CREATE TABLE
YANGTK T_6 CREATE TABLE
由於Oracle沒有提供NOAUDIT IN SESSION CURRENT語法,而直接NOAUDIT又對當前會話不生效,顯然是沒有辦法取消IN SESSION CURRENT的審計設定的。
SQL> noaudit create table in session current;
noaudit create table in session current
*
第 1 行出現錯誤:
ORA-46342: 不能對 IN SESSION 子句執行 NOAUDIT 命令
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4227/viewspace-678591/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- makes the current sessionSession
- session無法得到值Session
- beego session 根本無法正常使用GoSession
- 【SESSION】v$session and v$license 中sessions_current 的區別Session
- hibernate.current_session_context_classSessionContext
- AUTHID DEFINER\authid current_user與alter session set current_schemaSession
- 磁碟滿了sys無法連線寫入audit檔案
- Monitor RDBMS Session UGA and PGA Current And Maximum Usage Over TimeSession
- 解決php的session無法儲存到redisPHPSessionRedis
- audit時的by session和by access選項的區別!Session
- spring宣告式事務無法關閉sessionSpringSession
- SpringMVC @Transactional的陷井大坑引發No Session found for current threadSpringMVCSessionthread
- 關於requests的session方法無法保持cookie的問題。SessionCookie
- 異常資訊解決:Could not obtain transaction-synchronized Session for current threadAIsynchronizedSessionthread
- Could not obtain transaction-synchronized Session for current thread原因及解決方案AIsynchronizedSessionthread
- 錯誤記錄(九)Could not obtain transaction-synchronized Session for current threadAIsynchronizedSessionthread
- Database Audit and Audit trail purgingDatabaseAI
- 無腦批量kill sessionSession
- [提問交流]無法安裝——php5.4.27禁用了session_registerPHPSession
- FN_AUDIT - Name of security audit file
- kill session之後,會話一直無法釋放的巧妙解決辦法(lsof)Session會話
- Oracle SYS使用者無法設定session級別的read onlyOracleSession
- ORACLE AUDITOracle
- [20141202]11g審計sys.dba_audit_sessionSession
- RHEL審計內容/etc/audit/audit.rules
- 前後端頁面分離導致session無法正常獲取的問題後端Session
- audit by user by table
- Oracle Audit setupOracle
- audit審計
- oracle audit and securityOracle
- 審計--audit
- mysql-auditMySql
- mysqlalchemy audit extensionMySql
- 使用alter session set current_schema=scott用explain plan for檢視scott使用者的sqlSessionAISQL
- AUD: Audit Commit Delay exceeded, written a copy to OS Audit TrailMITAI
- oracle10g_audit_solaris_利用audit_sys_operationsOracle
- gc current block pin time gc current block flush time 疑惑GCBloC
- mysql CURRENT_TIMESTAMP 和ON UPDATE CURRENT_TIMESTAMPMySql