このページのトピック
Webhook通信
場所 | Main Dashboard > Select {Account} > Settings > Communication settings > Update communication settings > Configure 'Webhook' |
Trend Micro Cloud One™– Conformity は、カスタムWebhookチャネル経由で送信される通知をサポートします。これらの通知はユーザが作成したチャネルに送信され、関連するすべてのユーザが通知を受信します。
- Create a Webhook channelをクリックします。
- 自動通知を設定します。
- トリガを設定します。
- Configure nowで、次のパラメータを使用してWebhookチャネルを追加できます。
- ** Webhook ** URL: 「https」を含む安全なWebhook URLを入力してください。
- _URLの先頭をhttp://にすることはできません( https://)_のみ
- URLにlocalhostを含めることはできません
- URLにIPアドレスを含めることはできません
- Webhookセキュリティトークン
base64以外の文字は使用できません
**Conformityからのペイロードの検証 ** オプションのセキュリティトークンを設定する場合、 Conformity は、このトークンを使用して各ペイロードでハッシュ署名を作成します。ハッシュ署名は、要求ごとにヘッダで指定したURLにXConformity-Signatureとして渡されます。 。
提供されたセキュリティトークンを使用してハッシュを計算し、エンドからのハッシュがエンドと一致するようにします。ハッシュ署名は Conformity から生成され、HMAC 16進(sha-256)を使用するため、次の例のようにサーバを設定できます。
const signatureHash = request.headers["X-Conformity-Signature"];
const hmac = crypto.createHmac("sha256", YOUR_SECURITY_TOKEN);
const digest = Buffer.from(
hmac.update(JSON.stringify(PAYLOAD_BODY)).digest("hex")
);
const checksum = Buffer.from(signatureHash, "utf8");
if (
checksum.length !== digest.length ||
!crypto.timingSafeEqual(digest, checksum)
) {
console.log('Request body digest(${ digest }) did not match X - Conformity - Signature(${ checksum })');
throw new Error("Hashes do not match!");
}
console.log("Hashes match!");
チャネルが正常に作成されると、 Communication SettingsからWebhookチャネルを確認できるようになります。