Slack

ESET Protect と Slack の Webhook 連携手順と設定方法

ⓘ本ページはプロモーションが含まれています

お得なお知らせ

スポンサードリンク
生成AIで業務効率を倍化

ビジネスに生成AIを組み込む、最短ルート

個人スキルも組織スキルも、2026年のビジネス競争力は生成AI活用に収斂。法人研修・書籍で一気に底上げ。

バイテックBiz|法人生成AI研修▶ ビジネス書読み放題|Kindle Unlimited▶

▶ 耳で学ぶビジネススキルなら Audible 30日無料 。日経BP・東洋経済系の話題作も対象です。


スポンサードリンク

1. 前提条件と必要権限

項目 必要な権限/設定
ESET Protect コンソール 管理者(Administrator)または Security Analyst 権限。カスタム Webhook が利用可能なバージョンかを公式ドキュメントで確認すること。
Slack ワークスペース Workspace Admin または App Management 権限(Settings → Manage apps へアクセスできること)。
ネットワーク アウトバウンド HTTPS(TCP/443)への通信がファイアウォールで許可されていること。
ブラウザ 最新の Chrome / Edge / Firefox 推奨。コンソールの UI が正しく表示されます。

上記を事前にチェックしておくと、後続手順で「権限不足」や「通信ブロック」によるエラーが発生しにくくなります。


2. Slack の Incoming Webhook 作成手順

2‑1. アプリの作成(From scratch)

  1. Slack 管理画面AppsCreate New AppFrom scratch を選択。
  2. アプリ名例:ESET-Protect-Notifier、インストール先ワークスペースを指定し Create App

2‑2. 必要なスコープの付与

スコープ 用途
chat:write Webhook がチャンネルへメッセージを書き込むために必須。

手順
1. 左サイドバーの OAuth & Permissions を開く。
2. Scopes for Bot TokenAdd an OAuth Scopechat:write を入力し追加。
3. 変更後、Install App to Workspace をクリックして再インストール(スコープが有効化されます)。

2‑3. Incoming Webhooks の有効化と URL 取得

  1. Incoming Webhooks メニューで Activate Incoming Webhooks をオンにする。
  2. Add New Webhook to Workspace → 通知先チャンネル(例:#security-alerts)を選択し Allow
  3. 表示された Webhook URL をコピー。

公式リファレンス: https://api.slack.com/messaging/webhooks


3. ESET Protect 側の通知設定

3‑1. 設定画面へのアクセス

Settings → Notification に移動し、Add Integration ボタンをクリック。
表示される一覧から Webhook を選択します。

3‑2. Webhook URL の登録

取得した Slack の Webhook URL を「Endpoint URL」欄に貼り付けます。
※URL の前後に余計な空白や改行が入らないよう注意してください。

3‑3. ペイロードテンプレートの作成

ESET Protect は変数置換機能を提供しています。以下は マルチライン情報とコードブロック を組み合わせた推奨テンプレートです。

変数 内容
$description アラートの概要(1 行)例:ウイルス検出: Win32/PSW.Amatera.H
$details 発見日時、対象端末、ファイルパス、検知ログなど複数行で構成される詳細情報

ポイント

  • \n で改行を挿入しつつ、マルチラインテキストは コードブロック( で囲むことで Slack がレイアウトを崩さずに表示します。
  • JSON の構文エラーが起きないよう、変数展開後の文字列は必ず JSON Lint 等で検証してください。

3‑4. 設定保存とテスト送信

  1. Save をクリックして設定を確定。
  2. 同画面右下にある Test Notification ボタンで手動送信し、Slack にメッセージが届くか確認します。

4. 改行保持テクニック

4‑1. \n エスケープだけでも機能するケース

  • $details に改行文字(\n)が含まれていれば、Slack はそのまま表示します。
  • ただし連続した空白行は自動的に除去される点に注意。

4‑2. コードブロックで確実に保持

  • (バッククオート3つ)で囲むと等幅フォントになるだけでなく、エスケープ処理が二重になるリスクを回避できます。
  • 大量のログやスタックトレースなど、整形が重要な情報に最適です。

5. テストとトラブルシューティング

チェック項目 方法 想定結果
Slack 側受信 Test Notification 実行 → Slack の対象チャンネルを確認 メッセージが即時表示
ESET ログ System Log → Notifications を開く HTTP ステータスコード(200 が正常)とレスポンス本文が記録
ネットワーク ファイアウォールのアウトバウンド 443 許可を再確認 通信が遮断されていないこと

5‑1. よくあるエラーと対処法

ステータス / エラーメッセージ 原因 対策
403 Forbidden chat:write が未付与、またはアプリが再インストールされていない OAuth & Permissions にスコープを追加し、Install App to Workspace を再実行
Invalid webhook URL コピー漏れ・余分な空白・URL の有効期限切れ Slack から Webhook URL を再取得して正確に貼り付け
429 Too Many Requests 短時間に大量送信(テスト連打) 1 分間に 20 件以下に抑える、リトライ時は指数バックオフを実装
JSON parsing error カンマ抜け・クォート不整合 JSON Lint 等で構文検証、変数展開後の文字列も必ず確認

6. セキュリティ・運用ベストプラクティス

  1. Webhook URL の管理
  2. 環境変数やシークレットストア(例:HashiCorp Vault, Azure Key Vault)に格納し、平文でコードやドキュメントに残さない。
  3. 最小権限の原則
  4. chat:write 以外の不要なスコープは付与しない。将来的に機能拡張が必要になった場合のみ追加する。
  5. 送信レート制御
  6. ESET Protect の「Notification throttling」設定で同一アラートの連続送信回数を上限(例:5 分以内 1 回)に抑える。
  7. 監査ログの保持
  8. Slack 側は Workspace Settings → Message Retention を確認し、重要なセキュリティ通知が自動削除されないよう設定する。
  9. 定期的なバージョンチェック
  10. ESET Protect のアップデートで Webhook フィールドや変数名が変更されることがあります。公式リリースノートを月次で確認し、テンプレートを必要に応じて更新してください。

7. FAQ

質問 回答
Webhook の有効期限はありますか? Slack 側の Webhook URL は基本的に永久です。ただし、アプリがアンインストールされたり、ワークスペース設定で「Revoke all tokens」した場合は無効化されます。
複数の ESET Protect コンソールから同一チャンネルへ送信できますか? 可能です。ただし Slack のレートリミットに注意してください。必要に応じてチャネルごとに別々の Webhook を作成すると管理が楽になります。
JSON に日本語を直接書くことはできますか? UTF‑8 エンコードで問題なく送信できます。文字化け防止のため、エディタや環境変数も UTF‑8 で統一してください。
テスト時に実際のインシデント情報が流出しないようにしたい テンプレート内の変数をダミーデータ(例:$description = "テストアラート")に置き換えてから Test Notification を実行できます。

8. 参考リンク(公式)

内容 URL
ESET Protect 管理者ガイド(Webhook 設定章) https://help.eset.com/protect/en-US/administration/webhooks.html
Slack API – Incoming Webhooks ドキュメント https://api.slack.com/messaging/webhooks
Slack API – OAuth Scopes 解説 https://api.slack.com/scopes/chat:write

まとめ

  1. 権限とネットワーク を事前に確認 → エラー回避。
  2. Slack の Incoming Webhook を作成し、chat:write スコープを必ず付与。
  3. ESET Protect コンソール で Webhook URL と改行保持用テンプレートを設定。
  4. テスト送信とログ確認 で動作検証 → 必要に応じてトラブルシューティング。
  5. セキュリティベストプラクティス を守り、運用上のリスクを最小化。

この手順通りに実装すれば、ESET Protect の重要アラートが即座に Slack に届き、インシデント対応速度を大幅に向上させることができます。


スポンサードリンク

お得なお知らせ

スポンサードリンク
生成AIで業務効率を倍化

ビジネスに生成AIを組み込む、最短ルート

個人スキルも組織スキルも、2026年のビジネス競争力は生成AI活用に収斂。法人研修・書籍で一気に底上げ。

バイテックBiz|法人生成AI研修▶ ビジネス書読み放題|Kindle Unlimited▶

▶ 耳で学ぶビジネススキルなら Audible 30日無料 。日経BP・東洋経済系の話題作も対象です。


-Slack