Sumo Logic の CSE Automation でメール通知したい

 2024.01.22  AI

こんにちは (‾◡◝)
技術統括部のAIです。人間です。

今回はSumo Logicで使える機能の一つである、CSE Automation に関する概要や使い方を説明します。
この記事の最後には、CSE Automation を使ってインサイト(Insight)が作られたときにインサイトの名前や詳細についてメール通知できる状態にすることを目標としていますので、試しに作ってみてください。

そもそもCSE Automation とは?

CSE Automation とは、CSEと連携してエンティティ(Entity)やインサイトをトリガーにエンリッチメントや通知などのアクションを定義することで、一連の処理を自動化することができます。

例えばCSEでインサイトの生成など特定イベントの発生をトリガーにすることで、CSE画面を確認する前にメールでインサイトの情報を確認できます。

以下のイメージ図をもとにCSE Automation を作っていきます。

デフォルトを含め通知アクションは、以下の6つあります。

  • Cloud SIEM (CSE)
  • Continuous Intelligence Platform (CIP)
  • 電子メール
  • Slack
  • Microzoft Teams
  • Jira

詳細が気になる方は、Sumo Logicのヘルプページをじっくり読んでみてください。
https://help.sumologic.com/docs/cse/automation/about-automation-service-and-cloud-siem/

ちなみに同社が提供しているCloud SOAR(Automation)とは別物になりますので、ご注意ください。

Playbookの作成

まずはトリガー後の処理を行う部分を作っていきます。

ログイン後、CSE画面からAutomation画面に遷移し、[Manage Playbooks]をクリックします。
02-1
03-1

[+]ボタンをクリックしてPlaybookを新規作成します。
04-1

New playbook画面では、名前(Name)とタイプ(Type)が必須項目です。
Playbookの名前は一意である必要があるため、既存のPlaybookと名前が被らないものを入力します。
タイプは必ず「CSE」を選択してください。
※Playbookを作成する画面とCSE画面は異なるため、CSE画面でPlaybookを使用する場合は必ずタイプをCSEにする必要がありますので、ご注意ください。
上記2点を入力したら[CREATE]ボタンをクリックして保存します。
05-1
作成されたPlaybookが一覧に追加されると、StartとEndだけ表示されますので、ここから中身を作っていきます。
鉛筆マークの[Edit]ボタンをクリックします。
06-1

Startの[Edit]ボタンをクリックし、このPlaybookで使うパラメータを定義します。
※ここで定義されていないパラメータはこの後の条件設定やアクションで使うことができません。
07-1

インサイトをトリガーにしてアクションを行いたいので、ここでは「Insight」を選択します。
※後述のCSE側でCSE Automationを使うための設定を行う部分([)と同じ項目を選択する形です。08-1

Insightを選択すると、関連するパラメータが表示されますが、今回は以下6つのパラメータのみ使用するため、不要なものはゴミ箱マークをクリックしてすべて削除します。
削除したら[UPDATE]ボタンをクリックして保存します。09-1

パラメータの詳細につきまして、メーカのヘルプページには記載がないため、ひとつひとつ確認していく必要があります。

今回選択したパラメータをざっくり説明します。

  • created:インサイトが作成された日時
  • description:インサイトの詳細
  • entity.value:インサイトが作成されたエンティティの値
  • name:インサイトの名前
  • readableId:「INSIGHT-」から始まるインサイトの項番(例:INSIGHT-100)
  • severity:インサイトのセベリティ値

次は生成されたインサイトのセベリティ(severity)が「HIGT(高)」かどうかを判断する条件を設定します。

Startの[+]ボタンをクリックして[Condition]を選択します。
10-1-1

1つ目の値にはどの値に対する条件なのかを選択するため、[Playbook inputs]から[input.severity]を選択します。

11-1-112-1-1

1つ目の値と2つ目の値は一致するかどうか判断させたいため、[== (is equal to)]を選択します。

2つ目の値には、[HIGH]を手入力します。
※ここの値は大文字小文字を判断するため、入力ミスにご注意ください。
14-1

ここまでで以下の設定になっていることを確認し、[CREATE]ボタンをクリックします。15-1

これでインサイトのセベリティがHIGHかどうか判断する条件を追加できました。

次は条件に一致した場合と不一致の場合の処理を決めていきます。

条件と不一致する場合は、特に処理を行わずPlaybookを終了させたいので、赤い丸部分をクリックしEnd部分までドラックし矢印を設定します。
16

条件と一致する場合、インサイトの情報をメール通知させたいので、[CONDITION]にマウスオーバーし、[+]ボタンをクリックして[Action]を選択します。
17-1

Actionの名前はどのような処理か分かりやすいものを推奨します。
Integration は[Basic Tools]を選択するとTypeが自動的に選択されるため、Actionは[Send Email]を選択します。
18

Actionを選択すると、下部に入力項目が追加されます。

Recipientsにはメールを送りたいアドレスを入力してください。
※メールアドレス入力後に必ずEnterキーを押さないと有効になりませんので、ご注意ください。
Subject(件名)には、新しいインサイトが作成されたことが分かるように入力していますが、緑色の[Playbook.input.readabkeId]の入力方法は後述で説明します。
※件名が化けることがありますので、[Html]ボタンを有効にしてください。
19-1-1

メールの本文はPlain Text Content と HTML Content に入力します。
※どちらも必須項目となりますので、ご注意ください。

先に以下の内容を入力します。
New Insight created on:
Insight Name: 
Insight Description: 
On Entity: 

コロンの後ろにインサイトの生成日時や名前が入るように、緑色の[{}]ボタンから事前に定義したパラメータを設定していきます。

上記のボタンをクリックすると、[Type a value...]が追加されるので、クリックすると[Playbook]が選択できるようになります。
20-121-1

表示されるものを順々に選択していくと、以下のように正しくパラメータが設定できます。
22-1

では上記の内容に合わせてそれぞれパラメータを設定しました。23

Plain Text Content と同じように HTML Content を入力できたら、[CREATE]ボタンをクリックして保存します。
メール通知後の処理はないので、以下のようにEndに矢印を付け、保存します。27-1

保存した状態では、CSE側で使うことができないため、必ず[Publish]する必要があります。27-2

こちらでは必要に応じてバージョンなど記載することもできます。28-1

[PUBLISH]ボタンを押すと、画面下部に履歴が表示されます。
チェックマークがついている項目(バージョン)をCSE側で使うことができます。29

以上でPlaybookの作成するまで進みました。

次はCSE側で作成したPlaybookの連携と、動作確認をしていきます!

CSEとPlaybookの連携方法

ここからはCSE側で操作を行います。

CSEのAutomation画面から、[Create]ボタンをクリックすると、先ほど作成したPlaybookが選択できるようになります。
※Publishしていない場合、プルダウン選択できませんので、ご注意ください。30-1

[

以上でCSE画面で作成したPlaybookを使用できるようになりました。

次は動作確認をしてみます!

動作確認

CSEのInsights画面から任意のインサイトを選択します。
※同じインサイトですが、条件に一致した場合と不一致の場合を説明します。

[Actions]から使用したいPlaybookをクリックすると実行され、[Automations]タブから実行結果を確認できます。33-1

[View Playbook]ボタンをクリックすると、別タブで以下のフロー結果と詳細を確認できます。
またメールの受信もあわせて確認してください。

■条件が一致した場合

セベリティがHIGHの条件と一致したため、メール通知のActionが実行され、処理が終了しています。
通った経路は矢印が少し白くハイライトされています。35

■条件が不一致の場合

セベリティがHIGHの条件に一致しないため、赤丸から矢印がとおり、処理が終了しています。
通った経路は矢印が少し白くハイライトされています。34

まとめ

このようにCSE Automation を使うことで、CSE画面を確認せずにSeverityが高いインサイトが生成されるたびにメール通知を受け取ることができます。

また今回は説明していませんが、Slackなどと連携することもできます。
インサイトの運用にあわせて本機能を使ってみてください。

以上、CSE Automation の説明でした!


RECENT POST「Sumo Logic」の最新記事


Sumo Logic

Sumologicで目にするOpen Telemetry Collectorとは(前編)

Sumo Logic

CSE Automation で Slack 連携してみた

Sumo Logic

Sumo Logic アカウントを持っていないユーザへのダッシュボードの共有方法は?

Sumo Logic

Sumo Logic ダッシュボードやフォルダ共有について

Sumo Logic の CSE Automation でメール通知したい