Microsoft Entra DS でセキュリティ監査と DNS を有効にする

Microsoft Entra Domain Services のセキュリティと DNS の監査を使用すると、Azure でイベントを対象のリソースにストリーミングできます。 これらのリソースには、Azure Storage、Azure Log Analytics ワークスペース、または Azure Event Hub が含まれます。 セキュリティ監査イベントを有効にすると、Domain Services は、選択されたカテゴリのすべての監査対象イベントを対象のリソースに送信します。

Azure Event Hubs を使用して Azure ストレージにイベントをアーカイブし、セキュリティ情報イベント管理 (SIEM) ソフトウェア (または同等のもの) にイベントをストリーミングしたり、Microsoft Entra 管理センターから Azure Log Analytics ワークスペースを使用して独自の分析を行うことができます。

セキュリティ監査の出力先

Domain Services セキュリティ監査のターゲット リソースには、Azure Storage、Azure Event Hubs、または Azure Log Analytics ワークスペースを使用できます。 これらの出力先は、組み合わせて使用できます。 たとえば、Azure Storage はセキュリティ監査イベントをアーカイブするために使用できますが、Azure Log Analytics ワークスペースでは、短期の情報を分析してレポートを作成できます。

次の表は、対象となるリソースの種類ごとのシナリオの概要を示しています。

重要

Domain Services のセキュリティ監査を有効にする前に、ターゲット リソースを作成する必要があります。 これらのリソースは、Microsoft Entra 管理センター、Azure PowerShell、または Azure CLI を使用して作成できます。

ターゲット リソース シナリオ
Azure Storage 主なニーズがセキュリティ監査イベントをアーカイブ用に格納することである場合は、このターゲットを使用してください。 その他のターゲットもアーカイブの目的で使用できますが、主なニーズがアーカイブ以上である機能を提供しています。

Domain Services セキュリティ監査イベントを有効にする前に、まず Azure Storage アカウント を作成します。
Azure Event Hubs 主なニーズがデータ分析ソフトウェアやセキュリティ情報およびイベント管理 (SIEM) ソフトウェアなどの追加ソフトウェアとセキュリティ監査イベントを共有することである場合は、このターゲットを使用してください。

Domain Services のセキュリティ監査イベントを有効にする前に、Microsoft Entra 管理センターを使用してイベント ハブを作成します
Azure Log Analytics ワークスペース このターゲットは、主なニーズが Microsoft Entra 管理センターからのセキュリティ監査を直接分析して確認することである場合に使用する必要があります。

Domain Services のセキュリティ監査イベントを有効にする前に、Microsoft Entra 管理センターで Log Analytics ワークスペースを作成します。

Microsoft Entra 管理センターを使用してセキュリティ監査イベントを有効にする

Microsoft Entra 管理センターを使用して Domain Services のセキュリティ監査イベントを有効にするには、次の手順を完了します。

重要

Domain Services のセキュリティ監査は、さかのぼって適用されません。 過去のイベントを取得したり再生したりすることはできません。 Domain Services では、セキュリティ監査を有効にした後に発生するイベントのみ送信できます。

  1. Microsoft Entra 管理センターに全体管理者としてサインインします。

  2. [Microsoft Entra Domain Services] を検索して選択します。 目的のマネージド ドメインを選択します (例: aaddscontoso.com )。

  3. Domain Services ウィンドウで、左側にある [診断設定] を選択します。

  4. 診断は、既定では構成されていません。 作業を開始するには、 [診断設定の追加] を選択します。

    Add a diagnostic setting for Microsoft Entra Domain Services

  5. 診断構成の名前を入力します (aadds-auditing など)。

    目的のセキュリティまたは DNS の監査の宛先のチェックボックスをオンにします。 Log Analytics ワークスペース、Azure Storage アカウント、Azure イベント ハブ、またはパートナー ソリューションから選択できます。 これらの出力先リソースは、Azure サブスクリプションに既に存在している必要があります。 このウィザードでは、出力先リソースを作成できません。

    • Azure Log Analytics ワークスペース
      • [Send to Log Analytics] (Log Analytics への送信) を選択してから、監査イベントの保存に使用する [サブスクリプション][Log Analytics ワークスペース] を選択します。
    • Azure Storage
      • [ストレージ アカウントへのアーカイブ] を選択し、 [構成] を選択します。
      • 監査イベントのアーカイブに使用する [サブスクリプション][ストレージ アカウント] を選択します。
      • 準備ができたら、 [OK] を選択します。
    • Azure Event Hubs
      • [イベント ハブへのストリーム] を選択し、 [構成] をクリックします。
      • [サブスクリプション] および [イベント ハブ名前空間] を選択します。 必要に応じて、 [イベント ハブ名] を選択してから、 [イベント ハブ ポリシー名] を選択します。
      • 準備ができたら、 [OK] を選択します。
    • パートナー ソリューション
      • [Send to partner solution] (パートナー ソリューションへの送信) を選択してから、監査イベントの保存に使用する [サブスクリプション][宛先] を選択します。
  6. 特定のターゲット リソースに含めるログのカテゴリを選択します。 監査イベントを Azure Storage アカウントに送信する場合は、データを保持する日数を定義する保持ポリシーを構成することもできます。 既定の設定である 0 では、すべてのデータが保持され、一定期間後にイベントがローテーションされることはありません。

    1 つの構成内の各ターゲット リソースについて、さまざまなログ カテゴリを選択することができます。 この機能により、Log Analytics で保持するログのカテゴリや、アーカイブするログのカテゴリなどを選択できます。

  7. 完了したら、 [保存] を選択して変更をコミットします。 構成が保存されるとすぐに、ターゲット リソースが Domain Services の監査イベントの受信を開始します。

Azure PowerShell を使用してセキュリティと DNS の監査イベントを有効にする

Azure PowerShell を使用して Domain Services のセキュリティと DNS の監査イベントを有効にするには、次の手順を完了します。 必要に応じて、最初に Azure PowerShell モジュールをインストールし、Azure サブスクリプションに接続します。

重要

Domain Services の監査は、さかのぼって適用されません。 過去のイベントを取得したり再生したりすることはできません。 Domain Services では、監査を有効にした後に発生するイベントのみ送信できます。

  1. Connect-AzAccount コマンドレットを使用して、Azure サブスクリプションに対して認証します。 メッセージが表示されたら、アカウント資格情報を入力します。

    Connect-AzAccount
    
  2. 監査イベントのターゲット リソースを作成します。

  3. Get AzResource コマンドレットを使用して、Domain Services 管理対象ドメインのリソース ID を取得します。 $aadds.ResourceId という名前の変数を作成して、値を保持します。

    $aadds = Get-AzResource -name aaddsDomainName
    
  4. Set-AzDiagnosticSetting コマンドレットを使用して、Microsoft Entra Domain Services の監査イベントのターゲット リソースを使用するように Azure 診断設定を構成します。 次の例で、変数 $aadds.ResourceId は前の手順から使用しているものです。

    • Azure storage - storageAccountId を自分のストレージ アカウント名に置き換えます。

      Set-AzDiagnosticSetting `
          -ResourceId $aadds.ResourceId `
          -StorageAccountId storageAccountId `
          -Enabled $true
      
    • Azure イベント ハブ - eventHubName をお使いのイベント ハブの名前に置き換え、eventHubRuleId を承認規則 ID に置き換えます。

      Set-AzDiagnosticSetting -ResourceId $aadds.ResourceId `
          -EventHubName eventHubName `
          -EventHubAuthorizationRuleId eventHubRuleId `
          -Enabled $true
      
    • Azure Log Analytic ワークスペース - workspaceId を Log Analytics ワークスペースの ID に置き換えます。

      Set-AzureRmDiagnosticSetting -ResourceId $aadds.ResourceId `
          -WorkspaceID workspaceId `
          -Enabled $true
      

Azure Monitor を使用してセキュリティと DNS の監査イベントをクエリおよび表示する

Log Analytic ワークスペースを使用すると、Azure Monitor と Kusto クエリ言語を使用して、セキュリティと DNS の監査イベントを表示および分析できます。 このクエリ言語は、読みやすい構文で強力な分析機能を提供する読み取り専用の用途向けに設計されています。 Kusto クエリ言語の使用を開始する方法の詳細については、次の記事を参照してください。

次のサンプル クエリを使用して、Domain Services からの監査イベントの分析を開始できます。

サンプル クエリ 1

直近 7 日間のすべてのアカウント ロックアウト イベントを表示します。

AADDomainServicesAccountManagement
| where TimeGenerated >= ago(7d)
| where OperationName has "4740"

サンプル クエリ 2

2020 年 6 月 3 日午前 9 時から 2020 年 6 月 10 日午前 0 時までのすべてのアカウント ロックアウト イベント (4740) を、日時の昇順で並び替えて表示します。

AADDomainServicesAccountManagement
| where TimeGenerated >= datetime(2020-06-03 09:00) and TimeGenerated <= datetime(2020-06-10)
| where OperationName has "4740"
| sort by TimeGenerated asc

サンプル クエリ 3

7 日前まで (今から) の user という名前のアカウントのサインイン イベントを表示します。

AADDomainServicesAccountLogon
| where TimeGenerated >= ago(7d)
| where "user" == tolower(extract("Logon Account:\t(.+[0-9A-Za-z])",1,tostring(ResultDescription)))

サンプル クエリ 4

今から 7 日前までの user という名前のアカウントのサインイン イベントで、正しくないパスワードを使用してサインインしようとしたもの (0xC0000006a) を表示します。

AADDomainServicesAccountLogon
| where TimeGenerated >= ago(7d)
| where "user" == tolower(extract("Logon Account:\t(.+[0-9A-Za-z])",1,tostring(ResultDescription)))
| where "0xc000006a" == tolower(extract("Error Code:\t(.+[0-9A-Fa-f])",1,tostring(ResultDescription)))

サンプル クエリ 5

今から 7 日前までの user という名前のアカウントのサインイン イベントで、ロックアウトされたアカウントにサインインしようとしたもの (0xC0000234) を表示します。

AADDomainServicesAccountLogon
| where TimeGenerated >= ago(7d)
| where "user" == tolower(extract("Logon Account:\t(.+[0-9A-Za-z])",1,tostring(ResultDescription)))
| where "0xc0000234" == tolower(extract("Error Code:\t(.+[0-9A-Fa-f])",1,tostring(ResultDescription)))

サンプル クエリ 6

今から 7 日前までに、すべてのロックアウトされたユーザーに対してサインインしようとしたアカウント サインイン イベントの数を表示します。

AADDomainServicesAccountLogon
| where TimeGenerated >= ago(7d)
| where "0xc0000234" == tolower(extract("Error Code:\t(.+[0-9A-Fa-f])",1,tostring(ResultDescription)))
| summarize count()

セキュリティと DNS のイベント カテゴリを監査する

Domain Services セキュリティと DNS の監査は、従来の AD DS ドメイン コントローラーの従来の監査に沿っています。 ハイブリッド環境では、既存の監査パターンを再利用できるため、イベントを分析するときに同じロジックを使用することができます。 トラブルシューティングまたは分析が必要なシナリオに応じて、さまざまな監査イベントのカテゴリを対象にする必要があります。

次の監査イベントのカテゴリを利用できます。

監査のカテゴリ名 説明
アカウント ログオン ドメイン コントローラーまたはローカルのセキュリティ アカウント マネージャー (SAM) アカウントのデータの認証に対する試行を監査します。
-ログオンおよびログオフ ポリシーの設定とイベントは、特定のコンピューターへのアクセス試行を追跡します。 このカテゴリの設定とイベントは、使用されるアカウントのデータベースに注目します。 このカテゴリには、次のサブカテゴリが含まれます。
-資格情報の検証の監査
-Kerberos 認証サービスの監査
-Kerberos サービス チケット操作の監査
-その他のログオン/ログオフ イベントの監査
アカウント管理 ユーザーおよびコンピューター アカウントとグループの変更を監査します。 このカテゴリには、次のサブカテゴリが含まれます。
-アプリケーション グループ管理の監査
-コンピューター アカウント管理の監査
-配布グループ管理の監査
-その他のアカウント管理の監査
-セキュリティ グループ管理の監査
-ユーザー アカウント管理の監査
DNS サーバー DNS 環境の変更を監査します。 このカテゴリには、次のサブカテゴリが含まれます。
- DNSServerAuditsDynamicUpdates (プレビュー)
- DNSServerAuditsGeneral (プレビュー)
詳細の追跡 そのコンピューター上の個々のアプリケーションとユーザーのアクティビティを監査し、コンピューターの使用方法について理解します。 このカテゴリには、次のサブカテゴリが含まれます。
-DPAPI アクティビティの監査
-PNP アクティビティの監査
-プロセス作成の監査
-プロセス終了の監査
-RPC イベントの監査
ディレクトリ サービス アクセス Active Directory ドメイン サービス (AD DS) 内のオブジェクトに対するアクセスおよび変更の試行を監査します。 これらの監査イベントは、ドメイン コントローラーにのみ記録されます。 このカテゴリには、次のサブカテゴリが含まれます。
-詳細なディレクトリ サービスのレプリケーションの監査
-ディレクトリ サービスへのアクセスの監査
-ディレクトリ サービスの変更の監査
-ディレクトリ サービスのレプリケーションの監査
ログオン ログオフ 対話的またはネットワーク経由でのコンピューターへのログオンの試行を監査します。 これらのイベントは、ユーザー アクティビティを追跡し、ネットワーク リソースに対する攻撃の可能性を識別するために役立ちます。 このカテゴリには、次のサブカテゴリが含まれます。
-アカウントのロックアウトの監査
-ユーザー/デバイスの要求の監査
-IPsec 拡張モードの監査
-グループ メンバーシップの監査
-IPsec メイン モードの監査
-IPsec クイック モードの監査
-ログオフの監査
-ログオンの監査
-ネットワーク ポリシー サーバーの監査
-その他のログオン/ログオフ イベントの監査
-特別なログオンの監査
オブジェクト アクセス ネットワークまたはコンピューター上の特定のオブジェクトまたはオブジェクトの型へのアクセスの試行を監査します。 このカテゴリには、次のサブカテゴリが含まれます。
-生成されたアプリケーションの監査
-証明書サービスの監査
-詳細なファイル共有の監査
-ファイル共有の監査
-ファイル システムの監査
-フィルタリング プラットフォーム接続の監査
-フィルタリング プラットフォームのパケット破棄の監査
-ハンドル操作の監査
-カーネル オブジェクトの監査
-その他のオブジェクト アクセス イベントの監査
-レジストリの監査
-リムーバブル記憶域の監査
-SAM の監査
-集約型アクセス ポリシー ステージングの監査
ポリシーの変更 ローカル システムまたはネットワークの重要なセキュリティ ポリシーの変更を監査します。 通常、ポリシーは管理者がネットワーク リソースをセキュリティで保護するために設定します。 これらのポリシーの変更や変更の試行を監視することは、ネットワークのセキュリティ管理において重要な側面となる場合があります。 このカテゴリには、次のサブカテゴリが含まれます。
-監査ポリシー変更の監査
-認証ポリシー変更の監査
-認可ポリシー変更の監査
-フィルタリング プラットフォームのポリシー変更の監査
-MPSSVC ルールレベルのポリシー変更の監査
-その他のポリシー変更の監査
特権の使用 1 つまたは複数のシステムで特定のアクセス許可の使用を監査します。 このカテゴリには、次のサブカテゴリが含まれます。
-機密性が高くない特権の使用の監査
-機密性が高い特権の使用の監査
-その他の特権の使用イベントの監査
システム 他のカテゴリに含まれておらず、セキュリティに影響を及ぼす可能性があるコンピューターへのシステム レベルの変更を監査します。 このカテゴリには、次のサブカテゴリが含まれます。
-IPsec ドライバーの監査
-その他のシステム イベントの監査
-セキュリティ状態の変更の監査
-セキュリティ システム拡張機能の監査
-システムの整合性の監査

カテゴリごとのイベント ID

Domain Services セキュリティと DNS の監査は、特定のアクションによって監査可能なイベントがトリガーされた際に、次のイベント ID を記録します。

イベント カテゴリ名 イベント ID
アカウント ログオン セキュリティ 4767、4774、4775、4776、4777
アカウント管理セキュリティ 4720、4722、4723、4724、4725、4726、4727、4728、4729、4730、4731、4732、4733、4734、4735、4737、4738、4740、4741、4742、4743、4754、4755、4756、4757、4758、4764、4765、4766、4780、4781、4782、4793、4798、4799、5376、5377
詳細の追跡セキュリティ なし
DNS サーバー 513-523、525-531、533-537、540-582
DS アクセス セキュリティ 5136、5137、5138、5139、5141
ログオン ログオフ セキュリティ 4624、4625、4634、4647、4648、4672、4675、4964
オブジェクト アクセス セキュリティ なし
ポリシー変更セキュリティ 4670、4703、4704、4705、4706、4707、4713、4715、4716、4717、4718、4719、4739、4864、4865、4866、4867、4904、4906、4911、4912
特権の使用セキュリティ 4985
システム セキュリティ 4612、4621

次のステップ

Kusto の具体的な情報については、次の記事を参照してください。