This product is not supported for your selected Datadog site. ().
利用可能な対象:

ログ

概要

Observability Pipelines の Microsoft Sentinel 送信先を使用して、Microsoft Sentinel にログを送信します。Microsoft Sentinel の API 呼び出し制限については、Logs Ingestion API を参照してください。

前提条件

Microsoft Sentinel 送信先をセットアップするには、まだ作成していない場合は、Azure でワークスペースを作成する必要があります。そのワークスペースで、以下を行います。

  1. Microsoft Sentinel を追加します。
  2. データ収集エンドポイント (DCE) を作成します。
  3. Log Analytics ワークスペースを作成します (まだ作成していない場合)。
  4. データを送信するテーブルの種類に関する手順に従ってください。
    1. データ収集ルール (DCR) パラメータ用の JSON ファイルを作成します。詳細についてはデータ収集ルール (DCR)を、データを送信できるすべての利用可能なテーブルについてはサポートされている Azure テーブルを参照してください。
      • streamDeclarationsプロパティには、対応する Azure テーブル列にマッピングするすべてのログフィールドをリストする必要があります。詳細についてはストリーム宣言を参照してください。

      • transformKqlプロパティには、破棄され、テーブルにマッピングされないログ上のすべてのフィールドをリストする必要があります。詳細についてはデータフロープロパティを参照してください。

      • 注: 各ログフィールドは、streamDeclarations または transformKql のいずれかのプロパティにリストされている必要があります。そうでない場合、ログは破棄されます。ログが破棄されたときにアラートを設定する方法については、Azure Monitor で DCR データ収集を監視するを参照してください。

      • たとえば、この JSON ファイル (dcr-commonsecuritylog.json) は、CommonSecurityLog テーブルにマップされるログフィールドを追加します。

        {
            "location": "eastus",
            "kind": "Direct",
            "properties": {
            "dataCollectionEndpointId": "<DCE_RESOURCE_ID>",
            "streamDeclarations": {
                "Custom-CommonSecurityLog": {
                "columns": [
                    { "name": "TimeGenerated",      "type": "datetime" },
                    { "name": "DeviceVendor",       "type": "string"   },
                    { "name": "DeviceProduct",      "type": "string"   },
                    { "name": "DeviceVersion",      "type": "string"   },
                    { "name": "DeviceEventClassID", "type": "string"   },
                    { "name": "Activity",           "type": "string"   },
                    { "name": "LogSeverity",        "type": "string"   },
                    { "name": "SourceIP",           "type": "string"   },
                    { "name": "DestinationIP",      "type": "string"   },
                    { "name": "Message",            "type": "string"   },
                    { "name": "source_type",        "type": "string"   },
                    { "name": "path",               "type": "string"   },
                    { "name": "timestamp",          "type": "string"   }
                ]
                }
            },
            "destinations": {
                "logAnalytics": [
                {
                    "workspaceResourceId": "<WORKSPACE_RESOURCE_ID>",
                    "name": "LogAnalyticsDest"
                }
                ]
            },
            "dataFlows": [
                {
                "streams":      ["Custom-CommonSecurityLog"],
                "destinations": ["LogAnalyticsDest"],
                "transformKql": "source | project-away source_type, path, timestamp",
                "outputStream": "Microsoft-CommonSecurityLog"
                }
            ]
            }
            ```
        
      • Replace the placeholders:

        • <DCE_RESOURCE_ID> with the ID of the DCE resource you created in step 2. Run the az monitor data-collection endpoint show command to get the DCE resource ID. For example:
          az monitor data-collection endpoint show \
          --name "<DCE_NAME>" \
          --resource-group <RESOURCE_GROUP> \
          --subscription <SUBSCRIPTION_ID> \
          --query "id"
          
        • <WORKSPACE_RESOURCE_ID> with the ID of the Logs Analytics Workspace you created in step 3. Run the az monitor log-analytics workspace show command to get the Workspace resource ID. For example:
          az monitor log-analytics workspace show \
          --workspace-name "<DCE_NAME>" \
          --resource-group <RESOURCE_GROUP> \
          --subscription <SUBSCRIPTION_ID> \
          --query "id"
          
      • See CommonSecurityLog Columns for a full list of commonsecuritylog table columns.

    2. 前の手順で作成した JSON ファイルを使用して az monitor data-collection rule create Azure CLI コマンドを実行し、DCR を作成します。たとえば、dcr-commonsecuritylog.json サンプルファイルを使用する場合、
      az monitor data-collection rule create \
          --resource-group "myResourceGroup" \
          --location "eastus" \
          --name "myCollectionRule" \
          --subscription "mysubscription" \
          --rule-file "\path\to\json\dcr-commonsecuritylog.json"
      
    1. Log Analytics ワークスペースで、Settings > Tables に移動します。
    2. + Create をクリックします。
    3. カスタムテーブルを定義します (例: MyOPWLogs)。
      • 注:
        - テーブルが構成されると、プレフィックス Custom- とサフィックス _CL がテーブル名に自動的に追加されます。たとえば、Azure で テーブル名を MyOPWLogs と定義した場合、完全なテーブル名は Custom-MyOPWLogs_CL として保存されます。Observability Pipelines Microsoft Sentinel 宛先を設定する際は、完全なテーブル名を使用する必要があります。
        - 完全なテーブル名は、DCR のリソース JSON の streamDeclarations で確認できます。
    4. New Custom Log (DCR-based) を選択します。
    5. Create a new data collection rule をクリックし、先ほど作成した DCE を選択します。
    6. Next をクリックします。
    7. サンプル JSON ログをアップロードします。この例では、Schema and Transformation に以下の JSON を使用します。ここで TimeGenerated が必須となります。
      {
          "TimeGenerated": "2024-07-22T11:47:51Z",
          "event": {}
      }
      
    8. Create をクリックします。
  5. Azure で Microsoft Entra ID に移動します。
    1. Add > App Registration をクリックします。
    2. Create をクリックします。
    3. 概要ページで、Client credentials: Add a certificate or secret をクリックします。
    4. New client secret をクリックします。
    5. シークレットの名前を入力し、Add をクリックします。注: クライアントシークレットは 10 分後に難読化されるため、必ず控えておいてください。
    6. また、テナント IDと クライアント ID も控えておいてください。この情報は、Observability Pipelines Microsoft Sentinel 送信先を設定する際に、クライアントシークレットとともに必要になります。
  6. Azure Portal のデータ収集ルールページで、先ほど作成した DCR を検索して選択します。
    1. Access Control (IAM) を左側のナビゲーションでクリックします。
    2. Add をクリックし、Add role assignment を選択します。
    3. Monitoring Metrics Publisher ロールを追加します。
    4. Members ページで、User, group, or service principal を選択します。
    5. Select Members をクリックし、アプリ登録の手順で作成したアプリケーションを検索します。
    6. Review + Assign をクリックします。注: IAM の変更が有効になるまで最大 10 分かかる場合があります。

以下の表は、Observability Pipelines の Microsoft Sentinel 送信先を設定する際に必要な Azure および Microsoft Sentinel の情報をまとめたものです。

名前説明
Application (client) IDAzure Active Directory (AD) アプリケーションのクライアント ID。詳細については、Microsoft Entra ID でアプリケーションを登録するを参照してください。
例: 550e8400-e29b-41d4-a716-446655440000
Directory (tenant) IDAzure AD テナント ID。詳細については、Microsoft Entra ID でアプリケーションを登録するを参照してください。
例: 72f988bf-86f1-41af-91ab-2d7cd011db47
Table (Stream) Nameデータ収集ルール (DCR) の構成時に選択したテーブルと一致するストリームの名前。 注: 完全なテーブル名は、streamDeclarationsの下にあるリソース JSON で確認できます。
例: Custom-MyOPWLogs_CL
Data Collection Rule (DCR) immutable IDこれは、ログルーティングが定義されている DCR の不変 ID です。これは、DCR 概要ページに表示される Immutable ID です。
注: DCR の IAM 設定で Monitoring Metrics Publisher ロールが割り当てられていることを確認してください。
例: dcr-000a00a000a00000a000000aa000a0aa
DCR の作成または表示の詳細については、Azure Monitor のデータ収集ルール (DCR)を参照してください。

セットアップ

シークレット管理の場合: Microsoft Sentinel クライアントシークレットとデータ収集エンドポイントの識別子のみを入力してください。実際の値を入力しないでください
。

パイプラインを作成する際に、Microsoft Sentinel の送信先を設定します。パイプラインは、UI、API、またはTerraform を使用して作成できます。このセクションの手順は UI で設定します。

パイプライン UI で Microsoft Sentinel の送信先を選択した後、

  1. Microsoft Sentinel クライアントシークレットの識別子を入力します。空白のままにすると、デフォルトが使用されます。
  2. Microsoft Sentinel データ収集エンドポイントの識別子を入力します。空白のままにすると、デフォルトが使用されます。
  3. アプリケーションのクライアント ID を入力します (例: 550e8400-e29b-41d4-a716-446655440000)。
  4. テナントのディレクトリ ID を入力します (例: 72f988bf-86f1-41af-91ab-2d7cd011db47)。これは Azure AD テナント ID です。
  5. ログを送信する完全なテーブル名を入力します。例: テーブル名 Custom-MyOPWLogs_CL。
  6. データ収集ルール (DCR) の不変 ID を入力します (例: dcr-000a00a000a00000a000000aa000a0aa)。
If you enter secret identifiers and then choose to use environment variables, the environment variable is the identifier entered and prepended with DD_OP_. For example, if you entered PASSWORD_1 for a password identifier, the environment variable for that password is DD_OP_PASSWORD_1.

オプションのバッファリング

Toggle the switch to enable Buffering Options. Enable a configurable buffer on your destination to ensure intermittent latency or an outage at the destination doesn’t create immediate backpressure, and allow events to continue to be ingested from your source. Disk buffers can also increase pipeline durability by writing data to disk, ensuring buffered data persists through a Worker restart. See Destination buffers for more information.

  • If left unconfigured, your destination uses a memory buffer with a capacity of 500 events.
  • To configure a buffer on your destination:
    1. Select the buffer type you want to set (Memory or Disk).
    2. Enter the buffer size and select the unit.
      1. Maximum memory buffer size is 128 GB.
      2. Maximum disk buffer size is 5 TB.
        • Note: For Worker versions 2.20.x and older, the maximum disk buffer size is 500 GB.
    3. In the Behavior on full buffer dropdown menu, select whether you want to block events or drop new events when the buffer is full.

シークレットのデフォルト値

These are the defaults used for secret identifiers and environment variables.

  • Microsoft Sentinel クライアントシークレット識別子:
    • DCR 概要ページに Logs Ingestion Endpoint または Data Collection Endpoint として表示される DCE エンドポイント URL を参照します。URL の例: https://<DCE-ID>.ingest.monitor.azure.com。
    • デフォルトの識別子は DESTINATION_MICROSOFT_SENTINEL_CLIENT_SECRET です。
  • Microsoft Sentinel データ収集エンドポイント識別子:
    • Azure AD アプリケーションのクライアントシークレットを参照します (例: 550e8400-e29b-41d4-a716-446655440000)。
    • デフォルトの識別子は DESTINATION_MICROSOFT_SENTINEL_DCE_URI です。
  • Data collection endpoint (DCE)
    • The DCE endpoint URL is shown as the Logs Ingestion Endpoint or Data Collection Endpoint on the DCR Overview page. An example URL: https://<DCE-ID>.ingest.monitor.azure.com.
    • The default environment variable is DD_OP_DESTINATION_MICROSOFT_SENTINEL_DCE_URI
  • Client secret
    • This is the Azure AD application’s client secret, such as 550e8400-e29b-41d4-a716-446655440000.
    • The default environment variable is DD_OP_DESTINATION_MICROSOFT_SENTINEL_CLIENT_SECRET

送信先の仕組み

イベントのバッチ処理

イベントのバッチは、これらのパラメータのいずれかを満たしたときにフラッシュされます。詳細については、送信先のイベントバッチ処理を参照してください。

最大イベント数最大サイズ (MB)タイムアウト (秒)
なし101