SOAR Webhook を設定する
Webhook は、組織のアラートを Google Security Operations SOAR プラットフォームに取り込むための軽量ソリューションです。
Webhook で取り込まれたアラートは、コネクタを使用して取り込まれたアラートと同じ情報でプラットフォームに表示されます。
ケースの重複を防ぐため、同じソースのコネクタまたは Webhook のいずれかを使用し、両方は使用しないことをおすすめします。
Webhook は基本的なマッピング ロジックが必要なシナリオに最適ですが、コネクタは高度で柔軟なマッピングに適しています。
アラートを取り込むように Webhook を設定する
アラートを取り込むように Webhook を設定する手順は次のとおりです。
- [SOAR 設定] > [取り込み] > [Webhook] に移動します。
- [add] [Add incoming webhook] をクリックします。
- 新しい Webhook の名前を入力し、環境を選択します。
- [保存] をクリックします。保存すると、新しい Webhook がメインページに表示されます。
- Webhook URL をコピーして、後で使用できるようにメモしておきます。ソース プラットフォームで、Webhook の宛先として入力する必要があります。
データをマッピングする
JSON サンプルをアップロードしたら、[データ マッピング] セクションを使用して、ソース JSON のフィールドを Google Security Operations SOAR の適切なフィールドにマッピングできます。システムは未加工の JSON を処理し、ユーザー インターフェース(UI)を使用してマッピングを確立します。
- [データ マッピング] セクションで、[JSON サンプルをアップロード] をクリックします。Webhook が送信する JSON ペイロードの代表的なサンプルを指定します。
- Google Security Operations のフィールドを JSON サンプルの対応するフィールドにマッピングします。たとえば、必須の
StartTimeフィールドをマッピングするには、JSON からDetections.Last.Updateなどのタイムスタンプ フィールドを選択します。 - Expression Builder を使用してデータを絞り込みます。たとえば、日付形式関数を使用して、タイムスタンプを必要な Unix エポック ミリ秒形式に変換できます。詳細については、式ビルダーを使用するをご覧ください。
- 式ビルダーで [実行] をクリックして、マッピングをテストし、結果を確認します。緑色のチェックマークは、マッピングが成功したことを示します。
- Webhook の JSON ペイロードには、ケースの作成とアラートの取り込みに必要なフィールドが含まれている必要があります。詳細については、Webhook JSON スキーマについてをご覧ください。
- 必要なフィールドをすべてマッピングしたら、[保存] をクリックして、Webhook を有効にします。
マッピングのターゲット フィールドについて
JSON データをマッピングするときは、Google Security Operations SOAR 内の標準化されたフィールドにマッピングします。これらのフィールドは、受信データを正規化して構造化するのに役立つようにカテゴリに分類されています。データ マッピング UI で使用可能なフィールドは、内部システムのオントロジーに基づいています。主なカテゴリは次のとおりです。
- エンティティ フィールド: IP アドレス、ドメイン名、ファイル ハッシュ、ユーザー名など、システムがエンティティを自動的に抽出してモデル化できるデータポイントにこれらのフィールドを使用します。これらのフィールドにマッピングすると、アラートが強化され、関連付けとピボットが改善されます。
- 汎用イベント フィールド: タイムスタンプ(
StartTime、EndTime)、イベントの説明やメッセージ、その他の一般的なイベント属性など、一般的なイベント メタデータに使用します。 - 技術メタデータとデバイス メタデータ: これらのフィールドは、レポート デバイスのベンダーやプロダクト(
DeviceVendor、DeviceProduct)、イベントの重大度など、イベントソースに関する技術的な詳細に使用します。
Google Security Operations SOAR UI のデータ マッピング ツールで使用可能なフィールドを調べて、JSON ペイロードの各データに最適なターゲット フィールドを見つけます。
Webhook JSON スキーマについて
アラートが Google Security Operations SOAR によって正しく取り込まれて処理されるようにするには、Webhook JSON ペイロードが特定の構造に従っている必要があります。次の表に、JSON ペイロードで想定される主なフィールドの詳細を示します。
ケースとアラートの主なフィールド
これらのフィールドは、作成されるアラートまたはケースの最上位プロパティを表します。
| フィールド | タイプ | 推奨される形式 | 必須 | 説明 | 例 |
|---|---|---|---|---|---|
TicketId |
文字列 | UUID | ○ |
|
"f7167971-f641-432f-a06f-ebca3caaa9dd" |
SourceSystemName |
文字列 | テキスト | ○ | SOAR に元のアラートを送信した外部システム(SIEM やエンドポイント検出対応(EDR)システムなど)の名前。 | "Splunk" |
Name |
文字列 | テキスト | ○ | ケースのタイトルまたは名前。多くの場合、ソースのアラートタイプまたは概要から取得されます。 | "Suspicious Login Attempt" |
DeviceVendor |
文字列 | テキスト | ○ | アラートを生成したデバイスまたはプロダクトのベンダー。これはイベントデータからマッピングすることもできます。 | "Palo Alto Networks" |
RuleGenerator |
文字列 | テキスト | ○ | アラートを生成したソースシステム(SIEM 相関ルールなど)のルールの名前。 | "Brute Force Attempt Detected" |
StartTime |
文字列または整数 | エポック ミリ秒(UTC)または ISO8601 文字列(例: 「2026-04-09T14:30:00Z」) | ○ | ケース内の最も古いイベントの開始時刻。整数を指定する場合は、Unix エポックのミリ秒単位にする必要があります。 | 1670000000000 または "2026-04-09T14:30:00Z" |
Environment |
文字列 | テキスト | × | このアラートが属する SOAR 環境の名前。これは、SOAR 設定で定義された環境と一致している必要があります。 | "Default Environment" |
Description |
文字列 | テキスト | × | ケースまたはアラートの簡単な説明。 | "Failed login followed by success from new IP" |
DisplayId |
文字列 | UUID または文字列 | × |
|
"f7167971-f641-432f-a06f-ebca3caaa9dd" |
Reason |
文字列 | テキスト | × | アラートが作成またはトリガーされた理由。 | "Unusual file access patterns detected." |
DeviceProduct |
文字列 | テキスト | × | アラートを生成したベンダーのプロダクト名。これはイベントデータからマッピングすることもできます。 | "Cortex XDR" |
EndTime |
文字列または整数 | エポック ミリ秒(UTC)または ISO8601 文字列(例: 「2026-04-09T14:30:00Z」) | × | ケースの最新のイベントの終了時刻。整数を指定する場合は、Unix エポックのミリ秒単位にする必要があります。 | 1670000060000 または "2026-04-09T14:31:00Z" |
Priority |
Integer | 0~100 | × | ケースの優先度。指定しない場合のデフォルトは 40 です。(0 ~ 19: 情報、20 ~ 39: 低、40 ~ 59: 中、60 ~ 79: 高、80 ~ 100: 重大) | 80 |
EventsList |
配列 | JSON オブジェクトの配列 | × | ソースから受信した 1 つ以上の未加工のイベント オブジェクトを含む配列。未加工のイベントデータの送信をご覧ください。 | [ { ... }, { ... } ] |
EventProduct |
文字列 | テキスト | × | イベントを作成したプロダクト。 | "Cortex XDR" |
EventName |
文字列 | テキスト | × | イベントのタイトルまたは名前。多くの場合、ソースのアラートタイプまたは概要から取得されます。 | "Suspicious Login Attempt" |
未加工のイベントデータの送信 - EventsList 配列
イベントを表す元の JSON ペイロードは、ソースシステムから取得したとおりに EventsList 配列内で送信する必要があります。このオブジェクトは、EventsList 配列の 1 つの要素です。次に、データ マッピング UI を使用して source_ip や timestamp などのフィールドをマッピングします。
EventsList 配列内のイベント オブジェクトの例
{
"event_id": "9a8b7c-1234-5678",
"timestamp": "2026-07-01T07:29:50Z",
"signature": "UserLoginFailed",
"severity": "Medium",
"user_name": "administrator",
"source_ip": "192.168.1.50",
"destination_ip": "10.0.0.10",
"domain": "CORP",
"status": "Failure",
"Reason": "Wrong Password",
"EventProduct": "Acme Firewall",
"EventName": "Failed Login Attempt"
}
主な考慮事項とベスト プラクティス
- タイムスタンプ: 最上位のすべての
StartTimeフィールドとEndTimeフィールドに Unix エポック ミリ秒を使用します(整数として)。イベントデータ内で、ソースのタイムスタンプをそのまま指定します。タイムスタンプは、データ マッピング UI で変換します。 - 必須フィールド: [必須] 列で [はい] とマークされているすべてのフィールドが JSON ペイロードに含まれていることを確認します。
EventsList配列: この配列は非常に重要です。アラートが単一のイベントを表す場合でも、EventsList配列でラップする必要があります。- データ マッピング UI: [Webhook 構成] UI のデータ マッピング ツールを使用して、未加工の JSON のフィールドを適切な Google Security Operations SOAR フィールドにマッピングします。
- 一意性: 重複排除を回避するため、新しいアラートごとに
DisplayIdは一意である必要があります。DisplayIdが指定されていない場合、TicketIdは一意である必要があります。 - テスト: SOAR の [Webhook 構成] ページにある [JSON サンプルのアップロード] タブと [テスト] タブを使用して、ペイロードの構造とマッピングを検証します。
Webhook をテストする
[テスト] タブでは、Webhook のエンドツーエンドの機能をテストし、エラーの詳細な説明を表示できます。
- [Testing] タブで、Webhook URL をコピーします。
- 関連するデータを含む JSON ファイルをアップロードします。
- [実行] をクリックします。結果は出力とともに表示されます。
CrowdStrike プラットフォームを構成する
このユースケースでは、Webhook が Google SecOps プラットフォームへのアラートの取り込みを開始するための CrowdStrike の手順について説明します。
- CrowdStrike Falcon ダッシュボードで、Falcon ストアに移動して Webhooks アドオンをインストールします。
- Google SecOps プラットフォームからコピーした名前と Webhook URL を使用して Webhook を構成し、[保存] をクリックします。
- [ワークフロー] セクションに移動します。
- [ワークフローを作成] をクリックします。
- [新しい検出] などのトリガーを選択し、[次へ] をクリックします。
- [アクションを追加] を選択します。
- [アクションをカスタマイズ] セクションで、[アクション タイプ] メニューから [通知] を選択し、[アクション] メニューから [Webhook を呼び出す] を選択します。
- 最初の手順で追加した名前と必要なすべてのフィールドを選択し、[完了] をクリックします。
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。