概要
Cato管理アプリケーション (CMA) は、アカウント内の幅広いセキュリティおよびネットワークイベントに対して通知を生成します。 Webhookの統合を使用して、ServiceNow、Jira、Slack、Zendeskなどのサードパーティプラットフォームにこれらの各種通知を自動的に配信できます。 これにより外部システムは、Catoイベントデータをリアルタイムで受信し、インシデントのトラッキングと対応のための自動ワークフローを起動できます。
Catoは、二種類のWebhook統合をサポートしています:
標準的なWebhookは、外部プラットフォーム内のアイテムを作成または更新するためにHTTPリクエストを使用する。
相関WebhooksはXOpsサービスと統合します。 相関IDを使って、サードパーティツール内のXOpsセキュリティおよびネットワークストーリーのライフサイクルを表す項目を作成し、更新します。 XOpsライセンスが必要です。
Webhookの統合は、完全に設定可能です。 HTTPメソッド (POSTまたはPUT)、対象のURL、認証方法、およびリクエストの内容を定義します。 テンプレートとフィールド変数を利用して、サードパーティプラットフォームの要件に合わせてペイロードの構造をカスタマイズできます。
Cato Webhook統合の理解
Webhook統合の種類
Catoでは、サードパーティプラットフォームとアカウントを統合し、自動化フローを作成できるWebhookの種類をサポートしています:
標準的なWebhooksは、アカウントまたはシステムアラートに基づく各種通知や、ポリシーに基づく通知など、幅広いCMA通知をサポートします。 これにより、これらのデータを外部プラットフォームに配信することができ、Webhookが新しいレコードを作成するか、既存のレコードを更新するかを設定することができます。
相関Webhooksは、XOpsサービス向けに設計されています。 これにより、CMAの各ストーリーが外部システムのレコードにマッピングされ、ストーリーが進行するごとに更新されます。 XOpsライセンスが必要です。
Webhookフロー - 作成または更新
WebhookフローはCMAがサードパーティプラットフォームとどのように通信するかを定義します: 新しいレコードを作成するか既存のレコードを更新するかによって:
POST (作成) - Webhookがトリガーされるたびにサードパーティプラットフォームに新しいアイテムを作成します。 例: インターネットファイアウォールのルールがトラフィックフローをブロックするたびに、新しいServiceNowチケットを開きます。
PUT (更新) – サードパーティプラットフォーム内の既存のアイテムを更新します。 リクエストには、有効なアイテムIDがURLまたはボディ内に含まれています。
認証方法
Webhook統合を作成する際に選択できる異なる認証方法があります:
ベーシック - ユーザー名とパスワード
ベアラ - ベアラトークン
カスタム - 独自の認証を必要とするサービスのカスタムヘッダー。 必要に応じてキーバリューペアを追加します。
注: サードパーティサービスへのアクセスが特定のIPアドレスに限定されている場合は、この 記事をご参照ください。許可する必要があるCato IPアドレスのリストが表示されます(この記事を表示するには、サインインが必要です)。
通知コンテンツのカスタマイズ
テンプレート内の content フィールドには、メールアラートの内容に似たアラートの生成された読みやすい要約が含まれています。 コンテンツの形式は次の中から選択できます: contentText、contentMarkdown、または contentHTML。
ボディをカスタマイズする場合、メッセージコンテンツで使用できるデータフィールドが多数あります。 カスタムボディ(または構造) を定義し、Catoデータフィールドを埋め込むことができます。 $を入力すると、使用可能なデータフィールドが表示され、必要なフィールドを選択します。 フィールドは、リストをフィルタリングするためにオートコンプリートを利用します。 Catoフィールドに関する詳細については、 アラートインテグレーション向けJSONフィールドの理解をご覧ください。
Webhookフィールドのデフォルト値
通知データが値を含まない場合に柔軟に対処するために、動的Webhookフィールドのためのカスタムデフォルト値を設定できます。 Webhook URL、ヘッダー、またはボディのデフォルトの NA 値を上書きすることができます。 フォールバック値を定義するために${field:defaultValue} フォーマットを使用します。 例として、${level:medium} を設定することができます。 相関フローでは、https://EXAMPLE-INSTANCE.service-now.com/api/now/table/incident/${correlationId:12345} のようなWebhook URL内でフォールバックチケットIDを使用することもできます。この設定により、通知がデフォルトのServiceNowチケットに安全に記録されます。
標準Webhook統合
まず、プラットフォームと統合するためのWebhookを定義します。 その後、FirewallのアクションなどのCMA通知およびポリシールールを選択し、それらをWebhookを使用して生成するかどうかを定義します。 それから、どのCMA通知やポリシールール、例えばファイアウォールのアクションがWebhookを使って通知を生成するかを選択します。
Webhook統合を定義する
Webhookを設定してPOSTリクエストによる新規アイテムの作成またはPUTリクエストによる既存アイテムへの更新を行うことができます。 統合にはURL、リクエストボディ、認証方法、オプションのカスタムヘッダーやメッセージボディの設定が含まれます。 詳細を定義した後、接続をテストして正常に作動するかを検証することができます。
詳細を定義した後、接続をテストして正常に作動するかを確認できます。
Webhook統合を定義するには:
ナビゲーションメニューから アカウント > サブスクリプション をクリックし、Webhooks タブを選択します。
新しいWebhook統合 パネルが開きます。 新しいWebhook統合 パネルが開きます。
Webhook詳細 を設定します:
統合の 名前を入力します。
スライダーをクリックして有効(緑)または無効(灰色)を選択します(デフォルトでは有効になっています)。
JSONテンプレートの設定を統合用に構成します:
テンプレートから開始で、統合設定を入力するデフォルトのJSONテンプレートを選択します。
カスタムボディ のフィールドを調整および変更することができます(下記手順 7 を参照)。
注意: 違うテンプレートを選択した場合、カスタムボディ のフィールドはリセットされます。 テンプレートについて詳しくは、以下 テンプレートとフィールドをご覧ください。
接続詳細 を構成します:
Webhookを受信しているサービスの URL を入力します。
フィールドを変数としてURL内に使用することができます。
$を入力して利用可能なフィールドを表示します。リクエストメソッドでこのWebhookのフローを選択します: POST または PUT。
必要に応じて、サービスのための認証方法と設定を構成します。
(任意) カスタムヘッダーで、それぞれの追加HTTPヘッダー用のキーと値を定義します。
カスタムボディで、Webhook通知のコンテンツを定義します:
(任意) ボディを編集でコンテンツをカスタマイズします。
エスケープ文字として
/を使用し、ボディ内で$を使用します。$を入力して他のフィールドを埋め込みます
レスポンスコリレーションIDは、標準Webhook統合では使用されません。
デフォルト値を定義するために、フォーマット
${field:defaultValue}を使用します。
テストをクリックします。 CMAは、フィールドの自動生成された内容でテストHTTPリクエストを送信します。
統合がサービスと接続できる場合、テストが正常に完了しましたというメッセージが表示されます。
接続エラーが発生した場合、ページにはサービスで報告されたHTTPエラーコードとメッセージが表示されます。
保存をクリックします。 Webhookの統合が保存され、サブスクリプションページ内の統合タブに追加されます。
標準Webhook統合のトリガーを定義する
標準のWebhookは、CMAの通知によって起動されます。 2つのタイプの通知を設定できます:
これらの通知はWebhook統合を通じて直接送信できます。 これらの通知はWebhook統合を使用して直接送信できます。
詳しくは、アカウントレベルのアラートとシステム通知をご覧ください。
ポリシー内でルールを定義する際に、アクション領域を使用してWebhook統合を通して通知を送信できます。
ルールでアクションを定義する際に、Webhook統合を通して通知を送信するための アクション エリアを使用することができます。

相関Webhook統合
XOpsサービスは、XOpsセキュリティとネットワークストーリーのライフサイクルを第三者プラットフォームと統合する相関Webhooksをサポートしています。 これにより、更新が常に正しいアイテムに確実に適用されます。
これらの統合は、 XOps Stories からの関連フィールドを使用して、CMA内の各ストーリーを外部プラットフォーム内のチケット、 問題、またはメッセージにマッピングします。 これにより、更新が正確なアイテムに確実に適用されることが保証されます。 XOpsライセンスが必要です。
これらの統合には次のものが必要です:
標準Webhook統合
標準Webhookの定義
トリガーの2種類(各統合用)
標準Webhookを定義する
標準Webhook統合を作成して、サードパーティツールで最初のアイテム(チケット、Slackメッセージなど)を作成します。 それらのアイテムは、その後、相関Webhook統合によって更新されます。
詳細を定義した後、接続をテストしてそれが機能するかを確認できます。
標準Webhook統合を定義するには:
ナビゲーションメニューから アカウント > サブスクリプション をクリックし、Webhooks タブを選択します。
新しいWebhook をクリックします。 統合の 名前を入力します。
Webhook詳細 を設定します:
統合の 名前を入力します。
スライダーをクリックして有効(緑)または無効(灰色)を選択します(デフォルトでは有効)。
JSONテンプレートの設定を統合用に構成します:
テンプレートから開始で、統合設定を入力するデフォルトのJSONテンプレートを選択します。
カスタムボディ のフィールドを調整および変更することができます(下記手順 7 を参照)。
注意: 違うテンプレートを選択した場合、カスタムボディ のフィールドはリセットされます。 テンプレートについて詳しくは、以下 テンプレートとフィールドをご覧ください。
接続詳細 を構成します:
Webhookを受信しているサービスの URL を入力します。
URLに項目を変数として使用できます。 利用可能な項目を表示するには、$をタイプしてください。
リクエストメソッドで、POSTを選択します。
必要に応じて、サービスの認証方法および設定を構成します。
(オプション) カスタムヘッダーで、統合用に各追加のHTTPヘッダーのキーと値を定義します。
カスタムボディで、Webhook通知のコンテンツを定義します:
レスポンス相関IDで、URLでの相関に使用するサードパーティのアイテムを定義します。 たとえば、ServiceNowではresult.sys_id、Zendeskではticket.idになる可能性があります。
(オプション) 編集ボディでコンテンツをカスタマイズします。
/をエスケープ文字として入力し、本体で$を使用します。$を入力して他の項目を埋め込みます
デフォルト値を定義するには、
${field:defaultValue}の形式を使用します。例えば、${ID:12345}
テストをクリックします。 CMAが自動生成したコンテンツで項目に対するテストHTTPリクエストを送信します。
統合がサービスに接続できる場合、テストが正常に完了しましたというメッセージが表示されます。
接続エラーがある場合、ページはHTTPエラーコードとサービスから報告されたメッセージを表示します。
保存をクリックします。 Webhook統合が保存され、統合タブに追加されます。
相関Webhookを定義する
前の手順で作成した既存の項目を更新することで、サードパーティ ツール内で項目 (チケット、Slackメッセージなど) を介して通知を送信する相関Webhook統合を作成します。
相関Webhookを設定すると、URLは相関IDを使用してサードパーティプラットフォーム上の正しい項目を更新します。 相関IDの値が空の場合、更新は既存の項目に一致せず、失われます。 これを防ぐために、標準のWebhookのカスタムボディにアイテムIDを追加します。 これにより、相関WebhookがそのIDを相関フィールドのフォールバック値として使用できるため、後の更新がストーリーのライフサイクル全体で元の項目に引き続き適用されます。
詳細を定義した後、接続をテストし、動作を確認できます。
相関Webhook統合を定義するには:
ナビゲーションメニューから、アカウントをクリックし、Webhookタブを選択します。
新しいWebhookをクリックします。 新しいWebhook統合パネルが開きます。
Webhookの詳細を設定します:
統合の名前を入力します。
スライダーをクリックして統合を有効(緑色)または無効(灰色)にします(デフォルトでは有効になっています)。
統合のJSONテンプレートの設定を構成します:
テンプレートから開始でデフォルトのJSONテンプレートを選択し、統合設定を入力します。
以下のステップ7を参照し、カスタムボディの項目を調整および変更できます。
注:異なるテンプレートを選択した場合、カスタムボディの項目がリセットされます。 テンプレートに関する詳細情報は、以下の テンプレートと項目をご覧ください。
接続詳細を設定します:
Webhookを受け取るサービスのURLを入力します。 相関アイテムIDフィールドを追加して、既存アイテムと相関させます。
フィールドをURLの変数として使用できます。 「$」をタイプして利用可能な項目を確認します。
リクエストメソッドで、PUTを選択します。
必要に応じて、サービスの認証メソッドおよび設定を構成します。
(オプション) カスタムヘッダーで、統合用にそれぞれ追加のHTTPヘッダーのキーと値を定義します。
カスタムボディで、Webhook通知のコンテンツを定義します:
(オプション) 編集ボディでコンテンツをカスタマイズします。
/をエスケープ文字として入力し、本体で$を使用します$を入力して他の項目を埋め込みます
デフォルトの値を定義するには、
${field:defaultValue}の形式を使用します。例えば、${ID:12345}
テストをクリックします。 CMAが自動生成したコンテンツで項目に対するテストHTTPリクエストを送信します。
統合がサービスに接続できる場合、テストが正常に完了しましたというメッセージが表示されます。
接続エラーがある場合、ページはHTTPエラーコードとサービスから報告されたメッセージを表示します。
保存をクリックします。 Webhook統合が保存され、統合タブに追加されます。
標準Webhook統合のトリガーを定義する
標準のWebhookはCMAからの通知によってアクティブ化されます。 2種類の通知を構成できます:
CMA通知:アカウントに関する情報、例えばロックされたユーザーや管理者、ライセンスの更新をCMAが積極的に送信できます。 これらの通知はWebhook統合を通じて直接送信できます。
詳細情報は、アカウントレベルのアラートおよびシステム通知を参照してください。
ポリシールール通知:ルールが一致するたびにWebhookに通知を送信するために、ポリシールールでトラック設定を構成できます。
ポリシーでルールを定義する際に、アクションエリアを使用してWebhook統合を介して通知を送信できます。

相関統合のトリガーを定義し、検知・対応通知を利用して決める。
検知と対応のポリシーを使用すると、相関するXOpsストーリーのためにサードパーティプラットフォームで項目の作成と更新を自動化できます。 外部システムが常に現在のストーリーのステータスを反映するようになります。
ポリシーにルールを設定して次のことを行います:
ストーリーが作成されたときに、新しいアイテムを作成するための相関Webhookをトリガーします
ストーリー進行中に同じアイテムを更新するための相関Webhookをトリガーします
ストーリーが同期されるように、ストーリーの開始時にアイテムを作成するルールと、ストーリーが変更されたときにそれを更新するルールを構成します。
Webhook通知のトリガーを定義するには:
ナビゲーションメニューから、ホーム > 検知 & 対応ポリシーをクリックします。
対応ポリシータブを選択します。
新規をクリックします。 対応ポリシーに追加パネルが開きます。
ルールのための名前を入力します。
ソースセクションでタイプ(例:ホスト, IP範囲, サイト)を選択し、ストーリーソースとしてルールに対する1つ以上のオブジェクトを選択します(またはIPアドレスを入力できます)。
デフォルトのソース値はすべてです。
(オプション)ルールに一致するために必要なストーリーの特性を定義する基準を特定します。
ルールのトリガーを選択します。
新しい項目を作成するためのストーリー作成。
既存のアイテムを更新するためのストーリー更新。
対応タブで、通知を送信を選択します。
通知の送信先で、統合を選択してください。
統合で通知を送信しているWebhook統合を選択します。
保存をクリックします。 このルールがポリシーに追加されます。
テンプレートと項目
各Webhookは、サードパーティシステムのフォーマットと動作に合わせて完全にカスタマイズ可能です。 WebhookはJSON形式で提供されており、対象プラットフォーム構造に適合するように調整できます。 静的および動的なペイロードの両方にCatoフィールド変数を使用します。
テンプレートを選択した後、JSONペイロードとして本体を編集し、カスタムテンプレートとして保存できます。 また、JSONにデータフィールドを埋め込むオプションがあり、適切な値がペイロードに含まれます(または利用不可の場合はNAとなります)。
「$」を入力すると、利用可能な項目が表示されます。 Cato項目に関する詳細情報は、アラート統合のためのJSONフィールドを理解するを参照してください。
Webhookを作成するときにこれらのテンプレートから選択できます:
すべての項目 - すべての利用可能な項目が含まれます
基本 - 最もよく使用される項目を含むテンプレート
Jira - 基本的なJiraテンプレート
サービスNow チケット作成 - ServiceNowで新しいチケットを作成します
サービスNow チケット更新 - ServiceNow内の既存のチケットを更新します
Slack - Slackチャネルにメッセージを送信します
Zendesk チケット作成 - Zendeskで新しいチケットを作成します
Zendesk チケット更新 - 既存のZendeskチケットを更新します
カスタム - テンプレートの設定をカスタマイズします
Webhook統合のURLを定義する際にフィールドも使用できます。