連載
» 2013年12月24日 19時25分 公開

従来の監査から飛躍的に改善され使いやすくなったUnified Auditユーザー目線でチェック! Oracle Database 12cの知りたいところ(4)(3/4 ページ)

[菅原 良也,株式会社コーソル]

Unified AuditingとDBA監査

 従来のDBA監査では、SYSDBAおよびSYSOPER権限で接続したユーザーの全ての操作を監査し、OSファイルに監査ログを記録していました。

 以下は、SYSユーザーでSQL文を実行した際にDBA監査機能で記録されたログの内容です。

DBA監査ログの例(OSファイル)

Fri Jul 12 16:13:50 2013 +09:00
LENGTH : '170'
ACTION :[18] 'SELECT x FROM dual'
DATABASE USER:[1] '/'
PRIVILEGE :[6] 'SYSDBA'
CLIENT USER:[6] 'oracle'
CLIENT TERMINAL:[5] 'pts/2'
STATUS:[1] '0'
DBID:[9] '210457781'

 Unified Auditingでも、SYSDBAおよびSYSOPER権限で接続したユーザーの全ての操作を監査し、SYSAUX表領域に監査ログが記録されます。

 以下は、SYSユーザーでSQL文を実行した際にUnified Auditingで記録されたログの内容です。

UNIFIED_AUDIT_TRAIL ビュー確認例

SELECT to_char(event_timestamp) as time,audit_type,action_name,dbusernameE,sql_text FROM UNIFIED_AUDIT_TRAIL ORDER BY event_timestamp;
TIME                     AUDIT_TYPE       ACTION_NAME  DBUSERNAME   
------------------------ ---------------- ------------ ------------ 
13-07-15 09:51:14.167048 Standard         SELECT       SYS          
SQL_TEXT
--------------------------------------------------------------------------------
SELECT to_char(event_timestamp) as time,audit_type,ACTION_NAME,DBUSERNAME,SQ
L_TEXT as log FROM UNIFIED_AUDIT_TRAIL ORDER BY even
t_timestamp

 上記の通り、Unified AuditingではSYSユーザーで実行したSQLに関しても監査ログを取得し、UNIFIED_AUDIT_TRAILビューで確認可能になっています。従来のDBA監査のようにOSファイルを参照する必要はなく、使いやすくなっています。

Unified AuditingとRMANの監査ログ

 従来の監査機能では、RMANによるバックアップの実行状況が明確に記録されませんでした。Unified AuditingではRMANを利用した操作時に以下のような監査ログが記録されており、RMANの実行状況が確認できるようになりました。

UNIFIED_AUDIT_TRAIL ビュー確認用のSQL文

SELECT
    to_char(event_timestamp) as time,rman_operation,rman_object_type,rman_device_type
FROM UNIFIED_AUDIT_TRAIL WHERE rman_operation is not null ORDER BY event_timestamp;

UNIFIED_AUDIT_TRAIL ビュー確認例(RMAN より、backup database 実行時)

TIME                     RMAN_OPERATION  RMAN_OBJECT_TYPE  RMAN_DEVICE_TYP
------------------------ --------------- ----------------- ---------------
13-07-16 13:46:55.562118 Backup          DB Full           Disk

UNIFIED_AUDIT_TRAIL ビュー確認例(RMAN より、delete backup 実行時)

TIME                     RMAN_OPERATION  RMAN_OBJECT_TYPE  RMAN_DEVICE_TYP
------------------------ --------------- ----------------- ---------------
13-07-16 13:50:14.724206 Delete          DB Full           None

 ログから実行した操作が明確に確認できるので、RMANによる操作履歴を確認する用途において非常に便利です。なお、監査ログが記録されるタイミングですが、RMANによるbackupコマンド終了時ではなく、RMANセッション終了時にログが記録されました。(RMANセッションをexitすると監査ログが確認できるようになりました。)

Unified AuditingとDataPumpの監査ログ

 従来の監査機能では、DataPumpの実行状況が明確に記録されませんでした。Unified Auditingでは、以下のようにDataPumpをコンポーネントに指定したポリシーを作成し有効とすることでDataPumpに関して監査ログが記録され、実行状況が確認できるようになりました。

DataPump ポリシーの作成と有効化の例

SQL> CREATE AUDIT POLICY all_pump ACTIONS COMPONENT=DATAPUMP ALL;
SQL> AUDIT POLICY all_pump;

UNIFIED_AUDIT_TRAIL ビュー確認例(DataPump import)

SQL> SELECT to_char(event_timestamp) as time, dp_text_parameters1, dp_boolean_parameters1
     FROM UNIFIED_AUDIT_TRAIL WHERE  dp_text_parameters1 is not null ORDER BY event_timestamp;
TIME
------------------------
13-07-16 15:56:51.845917
DP_TEXT_PARAMETERS1
----------------------------------------------------------------------
MASTER TABLE:  "SCOTT"."SYS_IMPORT_TABLE_01" , JOB_TYPE: IMPORT, METADATA_JOB_MODE: TABLE_EXPORT, JOB VERSION: 12.1.0.0.0, ACCESS METHOD: AUTOMATIC, DATA OPTIONS: 0, DUMPER DIRECTORY: NULL  REMOTE LINK: NULL, TABLE EXISTS: SKIP, PARTITION OPTIONS: NONE
DP_BOOLEAN_PARAMETERS1
----------------------------------------------------------------------
MASTER_ONLY: FALSE, DATA_ONLY: FALSE, METADATA_ONLY: FALSE, DUMPFILE_PRESENT: TRUE, JOB_RESTARTED: FALSE

 こちらもログから実行した操作が明確に確認できるので、DataPumpによる操作履歴を確認する用途において非常に便利です。

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。