亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > Oracle > 正文

ORACLE審計小結

2024-08-29 13:53:33
字體:
來源:轉載
供稿:網友

1、什么是審計

審計(Audit)用于監視用戶所執行的數據庫操作,并且Oracle會將審計跟蹤結果存放到OS文件(默認位置為$ORACLE_BASE/admin/$ORACLE_SID/adump/)或數據庫(存儲在system表空間中的SYS.AUD$表中,可通過視圖dba_audit_trail查看)中。默認情況下審計是沒有開啟的。
不管你是否打開數據庫的審計功能,以下這些操作系統會強制記錄:用管理員權限連接Instance;啟動數據庫;關閉數據庫。

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$,審計的結果只有連接信息;
DB,Extended:這樣審計結果里面除了連接信息還包含了當時執行的具體語句;
OS:將audit trail 記錄在操作系統文件中,文件名由audit_file_dest參數指定;
xml:10g里新增的。

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

3、審計級別

當開啟審計功能后,可在三個級別對數據庫進行審計: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可以對schema的DDL進行“審計”,這個功能稍顯不足。

4、審計的一些其他選項

by access / by session:
by access 每一個被審計的操作都會生成一條audit trail。
by session 一個會話里面同類型的操作只會生成一條audit trail,默認為by session。

whenever [not] successful:
whenever successful 操作成功(dba_audit_trail中returncode字段為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;

7、10g中的審計告知一切

Oracle 數據庫 10g 審計以一種非常詳細的級別捕獲用戶行為,它可以消除手動的、基于觸發器的審計。
假定用戶 Joe 具有更新那張表的權限,并按如下所示的方式更新了表中的一行數據:
update SCOTT.EMP set salary = 12000 where empno = 123456;
您如何在數據庫中跟蹤這種行為呢?在 Oracle 9i 數據庫及其較低版本中,審計只能捕獲“誰”執行此操作,而不能捕獲執行了“什么”內容。例如,它讓您知道 Joe 更新了 SCOTT 所有的表EMP,但它不會顯示他更新了該表中員工號為 123456 的薪水列。它不會顯示更改前的薪水列的值 — 要捕獲如此詳細的更改,您將不得不編寫您自己的觸發器來捕獲更改前的值,或使用 LogMiner 將它們從存檔日志中檢索出來。
細粒度審計(FGA) ,是在 Oracle 9i 中引入的,能夠記錄 SCN 號和行級的更改以重建舊的數據,但是它們只能用于 select 語句,而不能用于 DML ,如 update 、insert 和delete 語句。因此,對于 Oracle 數據庫 10g 之前的版本,使用觸發器雖然對于以行級跟蹤用戶初始的更改是沒有吸引力的選擇,但它也是唯一可靠的方法。

8、實例講解

8.1、激活審計

sqlplus / as sysdba

SQL> show parameter audit
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
audit_file_dest                      string      /u01/app/oracle/admin/ORCL/adump
audit_sys_operations                 boolean     FALSE
audit_syslog_level                   string
audit_trail                          string      NONE

SQL> alter system set audit_sys_operations=TRUE scope=spfile;    --審計管理用戶(以sysdba/sysoper角色登陸)
SQL> alter system set audit_trail=db,extended scope=spfile;
SQL> startup force;
SQL> show parameter audit
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
audit_file_dest                      string      /u01/app/oracle/admin/ORCL/adump
audit_sys_operations                 boolean     TRUE
audit_syslog_level                   string
audit_trail                          string      DB, EXTENDED         

8.2、開始審計

sqlplus / as sysdba
SQL> audit all on t_test;
SQL> conn u_test
SQL> 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 sysdba
SQL> col DEST_NAME format a30
col OS_USERNAME format a15
col USERNAME format a15
col USERHOST format a15
col TERMINAL format a15
col OBJ_NAME format a30
col SQL_TEXT format a60
SQL> select OS_USERNAME,username,USERHOST,TERMINAL,TIMESTAMP,OWNER,obj_name,ACTION_NAME,sessionid,os_process,sql_text from dba_audit_trail;

sql> audit select table by u_test by access;
如果在命令后面添加by user則只對user的操作進行審計,如果省去by用戶,則對系統中所有的用戶進行審計(不包含sys用戶).

例:
AUDIT DELETE ANY TABLE;    --審計刪除表的操作
AUDIT DELETE ANY 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、審計語句

多層環境下的審計:appserve-應用服務器,jackson-client
AUDIT SELECT TABLE BY appserve ON BEHALF OF jackson;

審計連接或斷開連接:
AUDIT SESSION;
AUDIT SESSION BY jeff, lori;    -- 指定用戶

審計權限(使用該權限才能執行的操作):
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 DELETE 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;    -- 取消所有權限審計
NOAUDIT 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    -- 對象創建時默認的對象審計選項
DBA_STMT_AUDIT_OPTS    -- 當前數據庫系統審計選項
DBA_PRIV_AUDIT_OPTS    -- 權限審計選項
DBA_OBJ_AUDIT_OPTS   
USER_OBJ_AUDIT_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    -- 審計POLICIES
DBA_COMMON_AUDIT_TRAIL    -- 標準審計+精細審計

12、將審計結果表從system表空間里移動到別的表空間上

實際上sys.aud$表上包含了兩個lob字段,并不是簡單的move table就可以。
下面是具體的過程:
alter table sys.aud$ move tablespace users;
alter table sys.aud$ move lob(sqlbind) store as( tablespace USERS);
alter table sys.aud$ move lob(SQLTEXT) store as( tablespace USERS);
alter index sys.I_AUD1 rebuild tablespace u


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
精品亚洲一区二区三区在线播放| 国产在线观看91精品一区| 欧美激情综合色| 91地址最新发布| 国产欧美日韩视频| 国产一区二区免费| 国产精品久久久久久久久久尿| 91免费福利视频| 日韩中文字幕欧美| 国产精品久久久久久久久久尿| yw.139尤物在线精品视频| 日韩免费观看在线观看| 欧美俄罗斯乱妇| 国产福利视频一区二区| 日韩电影免费观看在线观看| 欧美日韩国产麻豆| 中文字幕欧美国内| 欧美激情综合亚洲一二区| 一区二区三区四区在线观看视频| 97在线观看视频| 国产精品美女网站| 日韩欧美国产高清91| 久久久久中文字幕2018| 亚洲免费电影一区| 亚洲精品一区av在线播放| 亚洲日本成人女熟在线观看| 欧美国产在线电影| 97久久精品人人澡人人爽缅北| 88国产精品欧美一区二区三区| 欧美性xxxx在线播放| 日韩一区二区福利| 亚洲国产精品va在看黑人| 欧洲一区二区视频| 伊人久久男人天堂| 日本人成精品视频在线| 欧美午夜无遮挡| 日韩国产精品亚洲а∨天堂免| 国产成人91久久精品| 日韩中文字幕国产| 欧美激情xxxx| 福利一区视频在线观看| 国产日韩精品综合网站| 日韩亚洲欧美中文高清在线| 国产黑人绿帽在线第一区| 亚洲精品国产精品自产a区红杏吧| 欧美高清电影在线看| 91高清免费视频| 欧美小视频在线观看| 国产成人中文字幕| …久久精品99久久香蕉国产| 国产精品欧美激情在线播放| 欧美激情欧美狂野欧美精品| 久久久久久亚洲精品中文字幕| 亚洲自拍高清视频网站| 91九色国产社区在线观看| 日韩精品欧美国产精品忘忧草| 亚洲成人教育av| 国产精品美女999| 国产亚洲精品91在线| 黄色精品在线看| 青青草一区二区| 国产精自产拍久久久久久蜜| 亚洲精品国产免费| 日韩在线小视频| 欧美日韩激情小视频| 日韩国产高清污视频在线观看| 色午夜这里只有精品| 这里只有精品在线播放| 久久视频免费观看| 午夜精品美女自拍福到在线| 日韩国产精品视频| 亚洲第一福利网| 色偷偷噜噜噜亚洲男人的天堂| 亚洲春色另类小说| 欧美日韩国产成人在线观看| 精品久久久久久国产| 青草青草久热精品视频在线网站| 精品丝袜一区二区三区| 欧美亚洲在线播放| 亚洲午夜国产成人av电影男同| 欧美高清激情视频| 欧美精品中文字幕一区| 日韩最新中文字幕电影免费看| 国产精品亚洲欧美导航| 亚洲美女中文字幕| 91精品国产高清久久久久久91| 亚洲成色999久久网站| 欧美日韩在线视频一区二区| 亚洲最大av在线| 国模视频一区二区| 国产精品自产拍在线观看中文| 久久视频精品在线| 欧美成人亚洲成人| 久久久久久91香蕉国产| 国产欧美精品在线播放| 97在线视频精品| www国产精品com| 久久精品国产视频| 国产色综合天天综合网| 欧美色视频日本高清在线观看| 国产小视频91| 日韩在线高清视频| 91美女福利视频高清| 国产91色在线播放| 欧美不卡视频一区发布| 亚洲国产欧美日韩精品| 国产精品高潮在线| 精品视频在线导航| 国产成人97精品免费看片| 中文字幕在线成人| 成人在线激情视频| 欧美成人性色生活仑片| 亚洲电影免费观看高清完整版| 欧美在线播放视频| 欧美日韩激情视频8区| 国产亚洲精品久久久优势| 国产精品电影网站| 中文国产成人精品| 欧美国产在线电影| 国产一区二区三区日韩欧美| 操日韩av在线电影| 亚洲国产精品999| 精品久久久久久久久久久久久久| 亚洲国产高清高潮精品美女| 欧美韩国理论所午夜片917电影| 亚洲成人在线网| 日韩免费在线看| 日韩欧美在线视频日韩欧美在线视频| 亚洲国产又黄又爽女人高潮的| 欧美大片在线看免费观看| 国产成人久久精品| 97久久精品在线| 亚洲综合日韩中文字幕v在线| 亚洲欧美中文日韩v在线观看| 久久人人97超碰精品888| 国产成人在线一区| 亚洲一区二区三区成人在线视频精品| 91亚洲国产精品| 亚洲xxxx视频| 成人激情电影一区二区| 亚洲天天在线日亚洲洲精| 亚洲福利在线看| 欧美激情综合亚洲一二区| 欧美黄色性视频| 国产欧美精品一区二区| 国模私拍视频一区| 亚洲久久久久久久久久| 日韩欧美中文字幕在线观看| 亚洲欧美色婷婷| 日本亚洲精品在线观看| 亚洲天堂男人天堂女人天堂| www.日韩免费| 青青久久aⅴ北条麻妃| 亚洲第一精品电影| 亚洲欧美国产va在线影院| 亚洲欧美精品在线| 国产精品美女久久久免费| 国产精品成人一区二区三区吃奶| 亚洲国产美女精品久久久久∴| 亚洲第一免费播放区| 亚洲精品资源在线| 亚洲日韩欧美视频一区| 国产精品欧美风情| 国产日产久久高清欧美一区|