データベースアクティビティ監査
3つの監査がある
①データベース監査
②値監査
③ファイングレイス(FGA)監査
①データベース監査
監査対象のイベントに関して、発生したイベント、時間、発生させたユーザ、ユーザ利用クライアントPC
などの情報を取得する。
手順・・
1.AUDIT_TRAIL初期化パラメータに監査証跡の位置を設定
NONE:監査無効
DB:監査有効にして、監査レコードをDBに格納
※SYSスキーマ一部表
OS:監査有効にして、監査レコードをOSファイルに格納
※AUDIT_FILE_DEST初期化パラメータ指定ディレクトリ
2.監査オプションの指定(AUDITコマンド使用)
監査には
・SQL文監査
表に関する場合:AUDIT table;
・システム権限の監査
・オブジェクト権限の監査
・セッション監査
3.監査結果の表示
以下のデータディクショナリを検索して監査証跡を確認できる。
・DBA_AUDIT_TRAIL
全ての監査エントリ確認できる
・DBA_AUDIT_EXISTS
AUDIT EXISTS/NOT EXISTS レコードを確認可
・DBA_AUDIT_OBJECT
スキーマオブジェクト関連
・DBA_AUDIT_SESSION
全ての接続及び接続エントリ
・DBA_AUDIT_STATEMENT
文の監査レコード
②値監査
データ変更(DML)の監査
トリガーを使用して実装する
注意:
DML発行時にトリガーが発行されるため、DBへの負荷が高くなりパフォーマンス劣化となる可能性ある。
③FGA監査
SQL文を監査する
データベース監査の拡張、発生アクション以外に発行されたSQLも取得する。
DBMS_FGAパッケージを使用して、対象となる表またはビューに監査ポリシーを作成する。
問い合わせブロックから返される行が監査列、監査条件に一致する場合、監査イベントにより監査レコードが
作成され、監査証跡に格納される。
以下のデータディクショナリを検索して監査証跡を確認できる。
・DBA_FGA_AUDIT_TRAIL
全ての監査エントリ確認できる
・ALL_AUDIT_POLICIES
現行ユーザがアクセス可能なオブジェクトの全てのFGGAポリシーを確認できる
・DBA_AUDIT_POLICIES
データベース内のすべてのFGAのポリシーを確認できる
・USER_AUDIT_POLICIES
現行ユーザスキーマ内のオブジェクトの全てのFGAポリシーを確認できる
・DBA_AUDIT_OBJECT
スキーマオブジェクト関連
・DBA_AUDIT_SESSION
全ての接続及び接続エントリ
・DBA_AUDIT_STATEMENT
文の監査レコード