汎用ウェブフック

汎用ウェブフック統合 (アラート) により、特定の Next-Gen WAF アクティビティタイプの通知を定期購読することができます。

ヒント : CDN または Compute サービスのアラートを設定する場合は、オブザーバビリティガイドをご覧ください。

ウェブフック統合 (アラート) の追加

ウェブフック統合 (アラート) を追加するには、次の手順を実行します。

  1. Next-Gen WAF control panel
  2. Fastly control panel
  1. Next-Gen WAF コンソールにログインします。
  2. Sites メニューから、複数のサイトがある場合はサイトを選択します。
  3. Manage メニューから、Site Integrations を選択します。

  4. Add site integration をクリックします。

  5. Generic Webhook 統合を選択します。

  6. Webhook URL フィールドに、通知を受信する URL を入力します。

  7. すべてのアクティビティまたは特定のアクティビティに関するアラートを受け取るかどうかを選択します。特定のアクティビティを選択した場合、アクティビティメニューで統合がアラートを作成する対象となるアクティビティの種類を選択してください。
  8. Create site integration をクリックします。

通知形式

通知は以下の形式で送信されます。

{
"created": "2024-02-09T21:08:21.31644377Z",
"type": "flag",
"payload": {
"ID": "abcde123456789",
"CorpID": "123456789abcde",
"SiteID": "987654321fedcba",
"Scope": "site",
"Slug": "site.example",
"Name": "example",
"Description": "Webhook integration for Example site",
"CreatedBy": "admin@example.com",
"CreatedByID": "edcba987654321",
"Created": "2024-02-09T21:08:21.31644377Z",
"Updated": "2025-01-07T21:06:31.50725289Z",
"ResourceID": "ASDFghjkl123456789"
},
"link":"dashboard link to event",
"workspaceId": "www.mysite.com"
}

X-SigSci-Signature ヘッダー

汎用ウェブフック統合 (アラート) から送信されるすべてのリクエストには、X-SigSci-Signature というヘッダーが含まれています。その値は、汎用ウェブフックの作成時に生成された署名キーを使用してハッシュされた HMAC-SHA256 の16進数のダイジェストです。

署名キーをローテーションするには、次の手順を実行します。

  1. Next-Gen WAF control panel
  2. Fastly control panel
  1. Next-Gen WAF コンソールにログインします。
  2. Sites メニューから、複数のサイトがある場合はサイトを選択します。
  3. Manage メニューから、Site Integrations を選択します。

  4. 適切な汎用ウェブフック統合の名前をクリックしてください。

  5. Rotate をクリックします。

  6. (オプション) 署名キーの全体の値を表示するには、Reveal をクリックします。

検証は、署名キーを使用して汎用ウェブフックペイロードの HMAC-SHA256 の16進数のダイジェストを作成し、その結果を X-SigSci-Signature ヘッダーの値と比較することによって行います。

X-SigSci-Signature ヘッダー検証のコード例

例は X-SigSci-Signature のヘッダー検証コードを示しています。

  1. Go
  2. Python
  3. Ruby
  4. Bash
package main
import (
"crypto/hmac"
"crypto/sha256"
"encoding/hex"
"fmt"
)
// CheckMAC reports whether messageMAC is a valid HMAC tag for message.
func CheckMAC(message, messageMAC, key []byte) bool {
mac := hmac.New(sha256.New, key)
mac.Write(message)
expectedMAC := mac.Sum(nil)
return hmac.Equal(messageMAC, expectedMAC)
}
func main() {
key := []byte("[insert signing key here]")
h := "[insert X-SigSci-Signature value here]"
json := []byte(`[insert JSON payload here]`)
hash, err := hex.DecodeString(h)
if err != nil {
log.Fatal("ERROR: ", err)
}
ok := CheckMAC(json, hash, key)
fmt.Println(ok)
}

アクティビティタイプ

重要 : このセクションは、Next-Gen WAF コンソールにアクセスできる Next-Gen WAF のお客様のみが対象です。

Next-Gen WAF コンソールでウェブフック統合 (アラート) を設定するときは、以下のアクティビティタイプから選択できます。

アクティビティタイプ説明ペイロード
siteDisplayNameChangedサイト (ワークスペース) の表示名が変更されました
siteNameChangedサイト (ワークスペース) の略称が変更されました
loggingModeChangedエージェントモード (BlockingNot BlockingOff) が変更されましたサイト名で取得
agentAnonModeChangedエージェント IP 匿名化モードが変更されましたサイト名で取得
flagIP アドレスがフラグされましたID でイベントを取得
expireFlagIP アドレスのフラグが手動で期限切れになりましたイベントを一覧表示
createCustomRedactionカスタム修正が作成されましたカスタム修正の作成
removeCustomRedactionカスタム修正が削除されましたカスタム修正の削除
updateCustomRedactionカスタム修正が更新されましたカスタム修正の更新
customTagCreatedカスタムシグナルが作成されました
customTagUpdatedカスタムシグナルが更新されました
customTagDeletedカスタムシグナルが削除されました
customAlertCreatedカスタムアラートが作成されましたカスタムアラートの作成
customAlertUpdatedカスタムアラートが更新されましたカスタムアラートの更新
customAlertDeletedカスタムアラートが削除されましたカスタムアラートの削除
detectionCreatedテンプレート化されたルールが作成されました
detectionUpdatedテンプレート化されたルールが更新されました
detectionDeletedテンプレート化されたルールが削除されました
listCreatedリストが作成されましたリストの作成
listUpdatedリストが更新されましたリストを更新
listDeletedリストが削除されましたリストの削除
ruleCreatedリクエストルールが作成されました
ruleUpdatedリクエストルールが更新されました
ruleDeletedリクエストルールが削除されました
customDashboardCreatedカスタムダッシュボードが作成されました
customDashboardUpdatedカスタムダッシュボードが更新されました
customDashboardResetカスタムダッシュボードがリセットされました
customDashboardDeletedカスタムダッシュボードが削除されました
customDashboardWidgetCreatedカスタムダッシュボードカードが作成されました
customDashboardWidgetUpdatedカスタムダッシュボードカードが更新されました
customDashboardWidgetDeletedカスタムダッシュボードカードが削除されました
agentAlertエージェントアラートがトリガーされました