Microsoft Graph アクティビティ ログを収集する

以下でサポートされています。

概要

このパーサーは、Microsoft Graph アクティビティ ログからフィールドを抽出し、統合データモデル(UDM)に変換します。UDM フィールドを初期化し、ペイロードを解析して、タイムスタンプを抽出し、さまざまなプロパティを UDM フィールドにマッピングし、IP アドレスとポートを処理し、プリンシパルとネットワーク情報の有無に基づいてイベントタイプを分類します。

始める前に

次の前提条件を満たしていることを確認します。

  • Google SecOps インスタンス。
  • Microsoft Entra ID と Azure ストレージ アカウントへの特権アクセス。

Azure ストレージ アカウントを構成する

  1. Azure コンソールで、ストレージ アカウントを検索します。
  2. [作成] をクリックします。
  3. 次の入力パラメータの値を指定します。
    • Subscription: サブスクリプションを選択します。
    • リソース グループ: リソース グループを選択します。
    • リージョン: リージョンを選択します。
    • パフォーマンス: 必要なパフォーマンス レベルを選択します(標準が推奨されます)。
    • 冗長性: 必要な冗長性レベルを選択します(GRS または LRS を推奨)。
    • ストレージ アカウント名: 新しいストレージ アカウントの名前を入力します。
  4. [Review + create] をクリックします。
  5. アカウントの概要を確認して、[作成] をクリックします。
  6. [ストレージ アカウントの概要] ページで、[セキュリティとネットワーキング] のサブメニュー [アクセスキー] を選択します。
  7. [key1] または [key2] の横にある [Show] をクリックします。
  8. [クリップボードにコピー] をクリックして、キーをコピーします。
  9. キーは、後で参照できるように安全な場所に保存してください。
  10. [ストレージ アカウントの概要] ページで、[設定] のサブメニュー [エンドポイント] を選択します。
  11. [クリップボードにコピー] をクリックして、Blob サービス エンドポイント URL(https://.blob.core.windows.net など)をコピーします。
  12. エンドポイント URL は、後で参照できるように安全な場所に保存します。

Microsoft Graph アクティビティ ログをストレージ アカウントにエクスポートするように構成する

  1. Azure コンソールで、[Entra ID] を検索します。
  2. [モニタリング] > [診断設定] を選択します。
  3. [+ 診断設定を追加] をクリックします。
  4. 設定に一意の名前(ms-graph-activity など)を付けます。
  5. Google SecOps にエクスポートする MicrosoftGraphActivityLog カテゴリを選択します。
  6. [宛先の詳細] で、[ストレージ アカウントにアーカイブする] を選択します。
  7. サブスクリプションと、前のステップで作成したストレージ アカウントを選択します。
  8. [保存] をクリックします。

フィードを設定する

Google SecOps プラットフォームでフィードを設定するには、次の 2 つのエントリ ポイントがあります。

  • [SIEM 設定] > [フィード]
  • [Content Hub] > [Content Packs]

[SIEM 設定] > [フィード] でフィードを設定する

フィードを構成する手順は次のとおりです。

  1. [SIEM Settings] > [Feeds] に移動します。
  2. [Add New Feed] をクリックします。
  3. 次のページで [単一のフィードを設定] をクリックします。
  4. [フィード名] フィールドに、フィードの名前を入力します(例: Microsoft Graph アクティビティ ログ)。
  5. [ソースタイプ] で [Microsoft Azure Blob Storage] を選択します。
  6. [ログタイプ] として [Microsoft Graph アクティビティ ログ] を選択します。
  7. [次へ] をクリックします。
  8. 次の入力パラメータの値を指定します。

    • Azure URI: BLOB エンドポイント URL。

      ENDPOINT_URL/BLOB_NAME

      次のように置き換えます。

      • ENDPOINT_URL: BLOB エンドポイント URL(https://<storageaccountname>.blob.core.windows.net
      • BLOB_NAME: BLOB の名前(例: insights-logs-
    • URI is a: ログストリームの構成([単一ファイル] | [ディレクトリ] | [サブディレクトリを含むディレクトリ])に応じて URI タイプを選択します。

    • Source deletion options: 必要に応じて削除オプションを選択します。

    • 共有キー: Azure Blob Storage へのアクセスキー。
  9. [次へ] をクリックします。

  10. [Finalize] 画面で新しいフィードの設定を確認し、[送信] をクリックします。

コンテンツ ハブからフィードを設定する

次のフィールドに値を指定します。

  • Azure URI: BLOB エンドポイント URL。ENDPOINT_URL/BLOB_NAME 次のように置き換えます。
    • ENDPOINT_URL: BLOB エンドポイント URL(https://<storageaccountname>.blob.core.windows.net
    • BLOB_NAME: BLOB の名前(例: insights-logs-
  • URI is a: ログストリームの構成([単一ファイル] | [ディレクトリ] | [サブディレクトリを含むディレクトリ])に応じて URI タイプを選択します。
  • Source deletion options: 必要に応じて削除オプションを選択します。
  • 共有キー: Azure Blob Storage へのアクセスキー。

詳細オプション

  • フィード名: フィードを識別する事前入力された値。
  • ソースタイプ: Google SecOps にログを収集するために使用される方法。
  • アセットの名前空間: フィードに関連付けられた名前空間。
  • Ingestion Labels: このフィードのすべてのイベントに適用されるラベル。

UDM マッピング テーブル

ログフィールド UDM マッピング ロジック
callerIpAddress principal.asset.ip 未加工ログのフィールド callerIpAddress が UDM フィールドにコピーされます。
callerIpAddress principal.ip 未加工ログのフィールド callerIpAddress が UDM フィールドにコピーされます。
category security_result.category_details 未加工ログのフィールド category が UDM フィールドにコピーされます。
correlationId security_result.detection_fields.value 未加工ログのフィールド correlationId は、キーが correlationId の UDM フィールドにコピーされます。
Level security_result.detection_fields.value 未加工ログのフィールド Level は文字列に変換され、キーが Level の UDM フィールドにコピーされます。
operationName metadata.product_event_type 未加工ログのフィールド operationName が UDM フィールドにコピーされます。
operationVersion additional.fields.value.string_value 未加工ログのフィールド operationVersion は、キーが operationVersion の UDM フィールドにコピーされます。
properties.apiVersion metadata.product_version 未加工ログのフィールド properties.apiVersion が UDM フィールドにコピーされます。
properties.appId target.resource.product_object_id 未加工ログのフィールド properties.appId が UDM フィールドにコピーされます。
properties.atContent additional.fields.value.string_value 未加工ログのフィールド properties.atContent は、キーが atContent の UDM フィールドにコピーされます。
properties.clientAuthMethod extensions.auth.auth_details properties.clientAuthMethod の値に基づいて、UDM フィールドは「Public Client」(0)、「Client ID/Client Secret」(1)、「Client Certificate」(2)に設定されます。
properties.clientRequestId additional.fields.value.string_value 未加工ログのフィールド properties.clientRequestId は、キーが clientRequestId の UDM フィールドにコピーされます。
properties.durationMs network.session_duration.seconds 未加工ログのフィールド properties.durationMs はミリ秒から秒に変換され、UDM フィールドにコピーされます。
properties.identityProvider security_result.detection_fields.value 未加工ログのフィールド properties.identityProvider は、キーが identityProvider の UDM フィールドにコピーされます。
properties.ipAddress principal.asset.ip 未加工ログのフィールド properties.ipAddress から IP アドレスが抽出され、UDM フィールドにコピーされます。
properties.ipAddress principal.ip 未加工ログのフィールド properties.ipAddress から IP アドレスが抽出され、UDM フィールドにコピーされます。
properties.location principal.location.name 未加工ログのフィールド properties.location が UDM フィールドにコピーされます。
properties.operationId security_result.detection_fields.value 未加工ログのフィールド properties.operationId は、キーが operationId の UDM フィールドにコピーされます。
properties.requestMethod network.http.method 未加工ログのフィールド properties.requestMethod が UDM フィールドにコピーされます。
properties.requestId metadata.product_log_id 未加工ログのフィールド properties.requestId が UDM フィールドにコピーされます。
properties.responseSizeBytes network.received_bytes 未加工ログのフィールド properties.responseSizeBytes は符号なし整数に変換され、UDM フィールドにコピーされます。
properties.responseStatusCode network.http.response_code 未加工ログフィールド properties.responseStatusCode は整数に変換され、UDM フィールドにコピーされます。
properties.roles additional.fields.value.string_value 未加工ログのフィールド properties.roles は、キーが roles の UDM フィールドにコピーされます。
properties.scopes additional.fields.value.string_value 未加工ログのフィールド properties.scopes は、キーが Scopes の UDM フィールドにコピーされます。
properties.servicePrincipalId principal.user.userid properties.userId が空の場合、未加工ログフィールド properties.servicePrincipalId が UDM フィールドにコピーされます。
properties.signInActivityId network.session_id 未加工ログのフィールド properties.signInActivityId が UDM フィールドにコピーされます。
properties.tenantId metadata.product_deployment_id 未加工ログのフィールド properties.tenantId が UDM フィールドにコピーされます。
properties.tokenIssuedAt additional.fields.value.string_value 未加工ログのフィールド properties.tokenIssuedAt は、キーが tokenIssuedAt の UDM フィールドにコピーされます。
properties.userAgent network.http.user_agent 未加工ログのフィールド properties.userAgent が UDM フィールドにコピーされます。
properties.userId principal.user.userid 未加工ログのフィールド properties.userId が UDM フィールドにコピーされます。
properties.wids security_result.detection_fields.value 未加工ログのフィールド properties.wids は、キーが wids の UDM フィールドにコピーされます。
resourceId target.resource.attribute.labels.value 未加工ログのフィールド resourceId は、キーが Resource ID の UDM フィールドにコピーされます。
resultSignature additional.fields.value.string_value 未加工ログのフィールド resultSignature は、キーが resultSignature の UDM フィールドにコピーされます。
time metadata.event_timestamp 未加工ログのフィールド time が解析されてタイムスタンプに変換され、UDM フィールドにコピーされます。has_principal が true で network.http が空でない場合、UDM フィールド event.idm.read_only_udm.metadata.event_type は「NETWORK_HTTP」に設定されます。has_principal が true で network.http が空の場合、「STATUS_UPDATE」に設定されます。それ以外の場合は、「GENERIC_EVENT」に設定されます。UDM フィールドは「Microsoft Graph」に設定されます。UDM フィールドは「Microsoft」に設定されます。

さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。