監査マネージャー

PEM Audit Managerを使用して、Advanced Serverインスタンスの監査ログ構成を簡素化できます。監査マネージャーを使用すると、次のようなロギング属性を構成できます。

  • PEMがログファイルを収集する頻度

  • ログファイルに含まれるデータベースアクティビティのタイプ

  • ログファイルをローテーションする頻度(およびタイミング)

監査ログには次のアクティビティが含まれる場合があります。

  • データベースインスタンスへのすべての接続

  • 接続試行の失敗

  • データベースインスタンスからの切断

  • すべてのクエリ(SELECTステートメント)

  • すべてのDMLステートメント(INSERT、UPDATE、DELETE)

  • すべてのDDLステートメント(CREATE、DROP、ALTERなど)

監査ログがPEMサーバーに保存されると、監査ログダッシュボードを使用して、読みやすい形式で情報を確認できます。監査ログダッシュボードでは、タイムスタンプの範囲(アクティビティが発生したとき)、アクティビティが発生したデータベース、アクティビティを実行しているユーザー、または呼び出されたコマンドの種類によってログファイルをフィルタリングできます。

Advanced Server Instance Service IDの設定

Advanced Serverインスタンスのロギングを設定するには、サーバーはバインドされたエージェントを備えたPEM管理サーバーであり、サーバー登録にはサービススクリプトの名前が含まれている必要があります。新しいサーバーを登録するときは、[新しいサーバー]ダイアログの[詳細設定]タブの[サービスID]フィールドにサービス名を含めます。

既存の(登録および接続された)サーバーにサービス名を追加する前に、サーバーを切断する必要があります。サーバー名を右クリックし、コンテキストメニューから Disconnect server を選択します。次に、サーバー名を右クリックして、コンテキストメニューから Properties を選択します。 Advanced タブを選択し、 Service ID フィールドにサービス名を追加します。

The Service ID of the Advanced Server instance

The Service ID of the Advanced Server instance

[サービスID]フィールドにより、PEMサーバーはサービスを停止および開始できます。

  • Advanced Server 11サービススクリプトの名前は edb-as-11 です。

  • Advanced Server 10サービススクリプトの名前は edb-as-10 です。

  • Advanced Server 9.6サービススクリプトの名前は edb-as-9.6 です。

  • Advanced Server 9.5(またはそれ以前)のサービススクリプトの名前はppas-9。/ * x です。 x *はバージョンを指定します。

  • PostgreSQL 9.6サービススクリプトの名前は postgresql-11 です。

  • PostgreSQL 9.6サービススクリプトの名前は postgresql-10 です。

  • PostgreSQL 9.6サービススクリプトの名前は postgresql-9.6 です。

EDB監査構成プローブの設定

Advanced Serverサーバーの監査ログを設定する前に、EDB Audit Configurationプローブが有効になっていることを確認する必要があります。 Manage Probes タブを開いてプローブのステータスを確認するには、ツリーコントロールで登録済みのAdvanced Serverサーバーの名前を右クリックし、 Management メニューから Manage Probes... を選択します。

Probe Configuration ダイアログの Enabled 列が EDB Audit Configuration probe の Yes に設定されていることを確認します。

The EDB Audit Configuration probe

The EDB Audit Configuration probe

EDB監査設定が有効になっていない場合は、[プローブの管理]タブの Enabled? スイッチを使用して有効にします。

監査マネージャーを使用した監査ログの構成

Audit manager ウィザードを開くには、 Management メニューから Audit Manager... を選択します。 Audit manager - Welcome ダイアログが開きます。

The Audit Manager Welcome dialog

監査マネージャーのようこそダイアログ

Next をクリックして続行します。

Select the servers you wish to configure for auditing

監査用に構成するサーバーを選択します

[サーバーの選択]ツリーコントロールを使用して、監査構成を適用するサーバーを指定します。ツリーコントロールでサーバーを使用可能にするには、PEMによる監視のためにサーバーを登録するときに、 Create – Server ダイアログの Advanced tab に Service ID を指定する必要があります。 EDB Postgres Advanced Serverのみが監査をサポートしていることに注意してください。 PostgreSQLサーバーは、ツリーコントロールに含まれません。

Next をクリックして続行します。

Auditing Parameters Configuration ダイアログでは、監査を有効または無効にし、ログレコードをPEMに収集する頻度を選択できます。

The Auditing Parameters Configuration dialog

監査パラメータ設定ダイアログ

Auditing parameters configuration ダイアログのフィールドを使用して、監査設定を指定します。

  • Auditing スイッチを使用して、指定したサーバーで監査を有効または無効にします。

  • Audit destination ドロップダウンを使用して、監査ログの宛先を選択します。 [ファイル]または[Syslog]を選択します。この機能はAdvanced Server 10以降のリリースでのみサポートされています。

  • Import logs to PEM スイッチを使用して、各サーバーからPEMサーバーにログレコードを定期的にインポートするようにPEMに指示します。ログファイルをインポートするには、スイッチを[はい]に設定します。デフォルトはNoです。

  • Collection frequency ドロップダウンリストボックスを使用して、ログ収集が有効になっているときにPEMが監視対象サーバーからログレコードを収集する頻度を指定します。

  • Log format ドロップダウンリストボックスを使用して、各サーバーに書き込まれる生ログ形式を選択します。ログ収集が有効になっている場合、PEMサーバーはCSV形式を使用します。

  • File name フィールドを使用して、ログファイル名を生成するときに使用される形式を指定します。デフォルトでは、フォーマットは audit-%Y-%m-%d_%H%M%S に設定されます:

    audit は audit フィールドで指定されたファイル名です
    Y はログが保存された年です
    m はログが保存された月です
    d はログが保存された日です
    H はログが保存された時間です
    M はログが保存された分です
    S はログが保存された秒です
  • Change Log Directory for selected servers? の隣のボックスをチェックし、 Audit Directory Name フィールドを使用して、監査ログが書き込まれるディレクトリ名を指定します。このディレクトリは、PEMサーバーのデータディレクトリの下にあります。

Log directory ボックスのフィールドを使用して、ログファイルが保存されるディレクトリに関する情報を指定します。

  • Change log directory for selected servers? スイッチを Change log directory for selected servers? に移動して、 Change log directory for selected servers? フィールドを有効にします。

  • Directory name フィールドを使用して、監査ログが書き込まれる各サーバー上のディレクトリの名前を指定します。指定されたディレクトリは、サーバー上のデータディレクトリのサブディレクトリとして作成されます。

Next をクリックして続行します。

Audit log configuration ダイアログは、監査パラメータ設定ダイアログで監査を有効にしている場合にのみ使用できます。

The Audit Log Configuration dialog

監査ログ設定ダイアログ

Audit log configuration ダイアログのコントロールを使用して、各サーバーに適用されるログ設定の詳細を指定します:

  • Connection attempts スイッチを使用して、接続試行を記録するかどうかを指定します。

    None は接続ログを無効にします。

    すべての接続試行がログに記録されることを示す All 。

    失敗した接続試行をログに記録するには Failed 。

  • 切断をログに記録するかどうかを指定するには、 Disconnection attempts スイッチを使用します。以下を指定します。

    切断をログに記録しないように指定するには、 None 。

    切断ログを有効にするには All 。

  • 記録されるステートメントの種類を指定するには、 Log statements フィールドを使用します。フィールド内をクリックして、以下から選択します。

    Select - SELECT キーワードを含むすべてのステートメントが記録されます。

    Error -エラーになったすべてのステートメントがログに記録されます。

    DML -すべてのDML(データ変更言語)ステートメントがログに記録されます。

    DDL -すべてのDDL(データ定義言語)ステートメント(データを追加、削除、または変更するステートメント)がログに記録されます。

    すべてのステートメントタイプを選択するには、 Select All の隣のボックスをオンにします。

    すべてのステートメントタイプの選択を解除するには、 Unselect All の隣のボックスをオンにします。

  • 収集したログの追跡タグを指定するには、 Audit tag フィールドを使用します。監査タグ付け機能は、Advanced Serverバージョン9.5以降でのみ使用可能です。複数のサーバーの監査機能を定義しており、1つ以上のサーバーがバージョン9.5以降である場合、このフィールドは有効になりますが、選択すると、タグ付け機能はバージョン9.5以降のサーバーにのみ適用されます。

Log rotation ボックスのフィールドを使用して、各サーバーでのログファイルの管理方法を指定します。

  • Enable? スイッチを使用して、ログファイルをローテーションするように指定します。 1つのファイルが管理不能なほど大きくなるのを防ぐために、新しいログファイルを定期的に使用する必要があることに注意してください。

  • Day drop-down リストボックスを使用して、ログファイルをローテーションする日を選択します。

  • Size (MB) フィールドを使用して、ログファイルをローテーションするサイズをメガバイト単位で指定します。

  • Time (seconds) フィールドを使用して、ログファイルのローテーションの間隔を秒数で指定します。

続行するには Next をクリックします:

The Schedule Auditing Changes dialog

監査変更のスケジュールダイアログ

Schedule Auditing Changes ダイアログを使用して、監査設定の変更をいつ有効にするかを決定します。

  • 監査設定の変更をすぐに実行する場合は、 Configure logging now? を選択します。影響を受けるデータベースサーバーが再起動され、監査の変更が有効になります。

  • Time? セレクターを使用して、将来のある時点で監査構成の変更をスケジュールします。ドロップダウンリストから目的の日付と時刻を選択します。影響を受けたデータベースサーバーは、監査の変更を有効にするために、指定された日時に再起動されます。

Finish をクリックして、監査設定プロセスを完了します。

監査マネージャーは、各サーバーに構成を適用するジョブをスケジュールします。ジョブは2つのタスクで構成されます。1つはサーバー上の監査ログ構成を更新し、もう1つは新しい構成でサーバーを再起動します。

Scheduled Tasks タブを使用して、スケジュールされたジョブのリストを確認できます。 Scheduled Tasks タブを開くには、サーバーまたはエージェントの名前を強調表示し、 Management メニューから Scheduled Tasks... を選択します。

監査ログダッシュボードでログを表示する

監査ログダッシュボードを使用して、Advanced Serverデータベースインスタンスから監査ログを表示します。

Audit Log ダッシュボードを開くには、サーバーまたはエージェントノードを右クリックし、 Dashboards メニューから Audit Log Analysis を選択します。 Dashboards メニュー( Management メニューにある)をナビゲートして、監査ログダッシュボードを開くこともできます。

The Audit Log dashboard

監査ログダッシュボード

監査ログダッシュボードには、監査レコードが新しい順に表示されます(一番上が最新のレコード、一番下が古いレコード)。

ウィンドウに表示されていない古い監査レコードを表示するには、監査レコードのリストを制御する垂直スクロールバー(ウィンドウの右側にある2つの最も内側のスクロールバー)を使用します。スクロールバーをウィンドウの下部に移動すると、古い監査レコードが継続的にロードされて表示されます。

フィルタリングを使用して、表示される監査レコードの数を制限できます。 Show Filters をクリックして、フィルターパネルを表示します。

The Audit Log dashboard filters panel

監査ログダッシュボードフィルターパネル

表示する監査レコードの特定の選択基準を提供するには、 filters panel のフィールドを使用します。

  • Start フィールドを使用して、レポートの開始日を指定します。フィールドでマウスボタンをクリックしてカレンダーを開き、開始日を選択します。

  • End フィールドを使用して、レポートの終了日を指定します。フィールドでマウスボタンをクリックしてカレンダーを開き、終了日を選択します。

  • 指定されたPostgresユーザーによってアクティビティが開始されたエントリのみを表示するには、 User フィールドを使用します。

  • 指定されたデータベースでアクティビティが発行されたエントリのみを表示するには、 Database フィールドを使用します。

  • アクティビティが指定されたタイプであったエントリのみを表示するには、 Command type フィールドを使用します。指定できるコマンドタイプは、アイドル、認証、およびSELECTです。 (ユーザーアプリケーションからSQLステートメントを表示するには、アイドルコマンドの種類を指定します。)

Filter をクリックして、フィルタリング基準をログエントリに適用します。