Webhook-formátum
A SilentShield valós idejű értesítéseket küldhet a szerverére webhookokon keresztül. Állítsa be a webhook-URL-eket a Vezérlőpult → Értesítések menüpontban.
Adatstruktúra
Minden webhook-adat a következő struktúrát követi:
{"event": "bot_detected", "timestamp": "2025-01-15T10:30:00Z", "data": {"keyId": "key_abc", "domain": "example.com", "ip": "203.0.113.42", "verdict": "bot", "score": 0.15, "userAgent": "Mozilla/5.0...", "page": "/contact"}}Eseménytípusok
| Event | Description |
|---|---|
bot_detected | Akkor aktiválódik, amikor egy kérést botként osztályoznak. |
bot_spike | Akkor aktiválódik, amikor a botészlelések a beállított időablakban meghaladják a riasztási küszöböt. |
quota_warning | Akkor aktiválódik, amikor a kvótahasználat eléri a 80%-ot vagy a 90%-ot. |
quota_exceeded | Akkor aktiválódik, amikor a havi kvóta túllépésre kerül. |
domain_verification_failed | Akkor aktiválódik, amikor egy domain újraellenőrzése sikertelen. |
key_rotated | Akkor aktiválódik, amikor egy API-kulcs rotálásra kerül. |
Aláírás-ellenőrzés
Minden webhook tartalmaz egy X-SilentShield-Signature fejlécet HMAC-SHA256 aláírással. Ellenőrizze ezt az aláírást, hogy megbizonyosodjon a webhook hitelességéről.
- Szerezze meg a nyers kéréstörzset (szövegként, feldolgozás előtt)
- Szerezze meg az X-SilentShield-Signature fejléc értékét
- Számítsa ki a törzs HMAC-SHA256 értékét a webhook-titokkal mint kulccsal
- Hasonlítsa össze a kiszámított aláírást a fejléc értékével
const crypto = require('crypto');
function verifyWebhook(body, signature, secret) {
const computed = crypto
.createHmac('sha256', secret)
.update(body)
.digest('hex');
return crypto.timingSafeEqual(
Buffer.from(computed),
Buffer.from(signature)
);
}Újrapróbálkozási irányelvek
Ha a végpontja nem 2xx státuszkóddal válaszol, vagy időtúllépés történik (10 másodperc), a SilentShield legfeljebb 3-szor próbálja újra exponenciális visszalépéssel (1 perc, 5 perc, 30 perc). 3 sikertelen próbálkozás után a webhook sikertelenként lesz megjelölve, és látható a Vezérlőpult → Értesítések → Sikertelen kézbesítések menüpontban.
Webhook-titok
A webhook-titok a webhook-végpont létrehozásakor generálódik a vezérlőpulton. Megtekintheti vagy újragenerálhatja a Vezérlőpult → Értesítések → Webhookok → Szerkesztés menüpontban.