Oracle Cloud Databaseの統合監査 - Unified Audit -
Unified Auditは、Oracle Database 12.1から追加されている新しい監査機能です。これは従来の初期化パラメータファイルのAudit Trailで制御する標準監査の機能をより使いやすくアーキテクチャ変更されたものです。
Oracle Cloud Database Servicesで提供される各データベース・サービスは、基本的にはこのUnified AuditがMixed Modeというデフォルト設定になっています。
Unified Auditの特徴
Unified Auditと従来の監査機能との比較
ログはAUDSYS.AUD$UNIFIED表に格納され、UNIFIED_AUDIT_TRAILビューを参照して確認する
条件による監査対象の絞り込み
監査対象を絞り込むことは監査ログのストレージ領域の削減とデータベースへのパフォーマンスへの影響を最小化することのメリットがあります
- 特定のユーザーのUPDATE,DELETE文のDMLを監査
CREATE AUDIT POLICY audPolicy1 ACTIONS UPDATE ON HCM.EMPLOYEES, DELETE ON HCM.EMP_EXTENDED
EVALUATE PER STATEMENT;
AUDIT POLICY audPolicy1 BY UserX, UserY;
- 指定されたユーザー以外のすべてのアクセスを監査
CREATE AUDIT POLICY audPolicy2 ACTIONS ALL ON HCM.EMPLOYEES, ALL ON HCM.EMP_EXTENDED;
AUDIT POLICY audPolicy2 EXCEPT UserX, UserY;
- 9時~17時以外のすべてのアクセスを監査
CREATE AUDIT POLICY audPolicy3 WHEN trunc(to_char(SYSDATE,‘hh24’)) >17 OR trunc(to_char(SYSDATE,‘hh24’)) <9 ACTIONS ALL ONLY TOPLEVEL;
AUDIT POLICY audPolicy3 ;
- DATAPUMPのエクスポートを監査
CREATE AUDIT POLICY audPolicy4 ACTIONS COMPONENT=DATAPUMP EXPORT;
AUDIT POLICY audPolicy4 BY SYSTEM;
- SCOTT.EMP表のすべてのDMLを監査、ただし、IPアドレスがNULL(ローカル接続)のみ監査
CREATE AUDIT POLICY ALL_ACTIONS_EMP
ACTIONS ALL ON SCOTT.EMP
WHEN 'SYS_CONTEXT(''USERENV'',''IP_ADDRESS'') IS NULL'
EVALUATE PER STATEMENT CONTAINER = ALL;
AUDIT POLICY ALL_ACTIONS_EMP;
Mixed Mode (混合モード)とは?
- Mixed Modeは、従来の監査機能とUnified Auditの両方が使用可能
- 12c以降、Mixed Modeがデフォルト設定になっている ※Autonomous DBはUnified Auditのみ
- DBCAでDBを作成した場合、または、Oracle Cloud Database ServicesのDBは ORA_LOGON_FAILURESとORA_SECURECONFIGのポリシーがデフォルト有効化される
- Mixed Modeの場合は、以下の制限事項に注意
- SYS,SYSASM等の監査ログファイルは、audit_file_destパラメータで指定されたディレクトリにOSファイルとして出力される
- RMANやDatapump等のユーティリティのログはUnified Auditに出力されない
- Mixed ModeからPure Unified Auditに完全移行すると、上記のログはUnfired Auditへ集約される
Unified Auditの確認方法
SELECT VALUE FROM V$OPTION WHERE PARAMETER = 'Unified Auditing';
-------------------------------------------
TRUE --> Unified Auditing
FALSE --> Mixed Mode
Mixed ModeからPure Unified Auditの移行手順
Pure Unified Auditの完全移行は必須ではない
従来の監査機能は廃止して、完全にUnified Auditだけを使用したい場合は以下で移行する
データベースのシャットダウン、リスナーの停止
$ORACLE_HOME/rdbms/libに移動
(Unix) make -f ins_rdbms.mk uniaud_on ioracle ORACLE_HOME=$ORACLE_HOME
(Windows) %ORACLE_HOME%/rdbms/bin/orauniaud12.dll.optionファイルをorauniaud12.dllにリネーム
リスナー、データベースの起動
Unified Auditの削除
- すべてのUnified Auditを削除する
EXEC DBMS_AUDIT_MGMT.CLEAN_AUDIT_TRAIL (audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_UNIFIED, use_last_arch_timestamp => TRUE);
- 指定した日時以前のUnified Auditを削除する
EXEC
DBMS_AUDIT_MGMT.SET_LAST_ARCHIVE_TIMESTAMP(
AUDIT_TRAIL_TYPE => DBMS_AUDIT_MGMT.AUDIT_TRAIL_UNIFIED,
last_archive_time => TO_TIMESTAMP('2020-01-01:00:00.00','YYYY-MM-HH24:MI:SS.FF'));
END;
/
EXEC DBMS_AUDIT_MGMT.CLEAN_AUDIT_TRAIL (audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_UNIFIED, use_last_arch_timestamp => False);
Unified Auditのデフォルト表領域の変更
監査ログによるSYSAUXの肥大化を避けたい場合は別の表領域に予め移動しておく
表領域の作成
CREATE BIGFILE TABLESPACE AUDIT DATAFILE SIZE 500G AUTOEXTEND ON NEXT 100G MAXSIZE 1000G;
表領域の移動
BEGIN
DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_LOCATION (
audit_trail_type => DBMS_AUDIT_MGMT. AUDIT_TRAIL_UNIFIED,
audit_trail_location_value => ‘AUDIT’);
END;
SQLでUnified Audit Trailビューから監査レコードにアクセスすることができますが、
不信な挙動やアクセスがあった場合にアラート、グラフィカルなダッシュボード画面で定常的にモニタリングする、といった運用監視の自動化には、Oracle Management CloudやData Safeといった他サービスと組み合わせることでより使いやすくなります。
Author And Source
この問題について(Oracle Cloud Databaseの統合監査 - Unified Audit -), 我々は、より多くの情報をここで見つけました https://qiita.com/western24/items/414b2a9dc359f1218c40著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .