SQLサーバーの追加

EventLog AnalyzerがサポートするSQL監査

EventLog Analyzerは、以下のSQL監査をサポートします。

  • DDL/DML監視
  • 詳細監査
  • 列の整合性監視

SQLサーバー監査オブジェクトを手動で作成する方法

SQLサーバー監査オブジェクトを手動で作成する方法は、以下のとおりです。

  1. SQL Server Management Studio(SSMS)の[オブジェクト エクスプローラー]を開きます。
  2. [セキュリティ]フォルダーを開きます。
  3. [監査]フォルダーを右クリックし、[新しい監査]をクリックします。
  4. [監査の作成]画面にて、任意の[監査名]を入力します。
  5. [監査の出力先]にて、[アプリケーション ログ]を選択します。
  6. その他、デフォルト設定を使用して監査設定を保存します。

SQLサーバーの追加手順

EventLog AnalyzerにSQLサーバーを追加する手順は、以下のとおりです。

  1. [設定]タブ → [ログソースの構成] → [データベース監査]に移動します。
  2. [SQLサーバー]タブにて、[+SQLサーバーのインスタンスを追加する]をクリックします。
    クリック後、SQLサーバーのインスタンスが自動的に検出されます。
  3. 監視対象のSQLサーバーインスタンスを選択し、[次へ]をクリックします。
  4. デフォルトの資格情報を使用する場合は、[ログオン資格情報を使用する]にチェックを入れます。(デフォルトの資格情報は、デバイスまたはドメインの資格情報、あるいはログオンする際に使用した資格情報です。)
    または、[ログオン資格情報を使用する]からチェックを外し、ユーザー名とパスワードを入力して、[保存]をクリックします。

SQLサーバーインスタンスを手動で追加する方法

監視対象のSQLサーバーインスタンスが自動的に検出されない場合は、以下の手順で追加できます。

  1. [設定]タブ → [ログソースの構成] → [データベース監査]に移動します。
  2. [SQLサーバー]タブにて、[+SQLサーバーのインスタンスを追加する]をクリックします。
  3. 画面右上の[+手動で追加する]をクリックします。
  4. Windowsサーバーの設定
    • Windowsサーバーを選択し、有効な資格情報を入力します。デフォルトの資格情報を使用することもできます。
  5. SQL Serverインスタンス設定
    • 指定されたフィールドにインスタンス名、ポート番号、および資格情報を入力します。
    • [詳細監査]を有効または無効にします。
    • 注記:詳細監査を有効にすると監査ポリシーが作成され、詳細監査を無効にすると、選択したSQLサーバーインスタンスの監査ポリシーが削除されます。

    • [インスタンス認証]ドロップダウンメニューから認証方法(Windows認証またはSQL認証)を選択します。
    • 注記:詳細監査には、Windows認証を推奨します。

  6. [追加]をクリックします。

追加されたSQLサーバーインスタンスの表示

EventLog Analyzerは、追加されたすべてのSQLサーバーインスタンスを[データベース管理]画面の[SQLサーバー]タブに一覧表示します。
[SQLサーバー]タブでは、SQLサーバーインスタンスの有効化、無効化、および削除を実施できます。


EventLog Analyzerによって実施されるSQL監査の種類

各監査のステータスは、[設定]タブ → [ログソースの構成] → [データベース監査] → [SQLサーバー]タブから確認できます。

1. DDL/DML監視

  • 詳細監査が有効になっている場合、以下の監査アクション設定でサーバー監査の仕様がSQLサーバーインスタンスに作成されます。
    • SCHEMA_OBJECT_ACCESS_GROUP
    • DATABASE_ROLE_MEMBER_CHANGE_GROUP
    • SERVER_ROLE_MEMBER_CHANGE_GROUP
    • FAILED_LOGIN_GROUP
    • SUCCESSFUL_LOGIN_GROUP
    • DATABASE_CHANGE_GROUP
    • DATABASE_OBJECT_CHANGE_GROUP
    • DATABASE_PRINCIPAL_CHANGE_GROUP
    • SCHEMA_OBJECT_CHANGE_GROUP
    • SERVER_PRINCIPAL_CHANGE_GROUP
    • LOGIN_CHANGE_PASSWORD_GROUP
    • SERVER_STATE_CHANGE_GROUP
  • DDL/DML監視では、Windowsデバイスから収集するアプリケーションタイプのイベントが使用されます。
  • DDL/DML監視では、以下のレポートグループ([レポート]タブ → [アプリケーション] → [SQL Server])が生成されます。
    • SQLサーバーイベント
    • SQLサーバートレンドレポート
    • DDL監査レポート
    • DML監査レポート
    • アカウント管理の監査
    • 監査サーバーレポート
    • 攻撃レポート
    • 追加のセキュリティレポート
  • 注記:サーバー監査の仕様を作成するには、詳細監査を有効にする必要があります。詳細監査は、後で無効にすることができます。詳細監査が無効になっている場合でも、必要なログは取得されます。


2. データベース監査

  • 詳細監査が有効になっている場合、データベース監査のイベントを収集するためにクエリが毎日23時に実行されます。
  • データベース監査では、以下のレポート([レポート]タブ → [アプリケーション] → [SQL Server] → [高度な監査レポート])が生成されます。
    • 最終ログイン時間レポート
    • 削除操作レポート
    • ログイン情報レポート
    • 最もよく使われるテーブル
    • テーブル更新レポート
    • インデックス情報レポート
    • サーバー情報レポート
    • 待機情報レポート
    • ブロック済みのプロセスレポート
    • スキーマ変更履歴
    • オブジェクト変更履歴
    • 接続されたアプリケーションレポート
    • セキュリティ変更レポート
    • 権限情報レポート
    • データベースの最終バックアップ
    • 最終DBCCアクティビティ
  • 注記:ログを取得するためのクエリは、詳細監査が有効になっている場合にのみ成功します。


3. 列の整合性監視

  • 列の整合性監視が設定されている場合、EventLog Analyzerは指定されたテーブルの列が変更されると(UPDATEクエリが実行されると)イベントビューアーにイベントを自動的に書き込むトリガーをSQLサーバーインスタンスに作成します。
  • 列の整合性監視レポートには、監視対象の列の変更に関する情報(値を変更したユーザー、値が変更された時間、値が変更されたテーブルなど)が表示されます。また、古い値と新しい値も表示されます。
  • 注記:text、ntext、imagesなどのデータ型は監視されません。

  • トリガーは変更を監視するために使用されます。リソースを多く使用するため、監視する列は慎重に選択する必要があります。
  • 列の整合性監視では、以下のレポート([レポート]タブ → [アプリケーション] → [SQL Server] → [高度な監査レポート])が生成されます。
    • 列修正レポート
  • 注記:列の整合性監視を有効にするには、以下の前提条件を満たす必要があります。

    • SQLサーバーでトリガーを作成するために、詳細監査有効にする必要があります。トリガー作成の完了後は、無効にすることができます。
    • 作成する必要があるトリガーは「AFTER TRIGGER」タイプであるため、トリガーを起動するにはテーブルに主キーが存在する必要があります。

4. 収集されるイベント

  • 詳細監査を有効にすると、レポートを生成するために、SQLサーバーで以下のイベントIDが有効になります。
    • DBCC情報レポート:211、427、610、8440、9100、15612、15615、2509、2510、2514、17557
    • ホストアクティビティレポート:18100
    • 整合性レポート:806、825
    • アクセス拒否レポート:229、300、230、262、916、5011
    • 違反レポート:17308、17311

注記:SQLサーバー監査に必要な最小限の権限は、こちらのドキュメントをご参照ください。

       概要