Testen von Webhooks und HMAC-Signaturprüfung

Webhook-Empfänger sind öffentliche Endpunkte, die Daten von externen Quellen verarbeiten. Dadurch ist die Signaturprüfung die einzige Sicherheitsmaßnahme zwischen Ihnen und jedem, der Ihre URL kennt. Die Webhooks-API signiert jede Zustellung mit einem HMAC und führt ein Zustellungsprotokoll, das Sie einsehen und wiedergeben können. So können Sie die Prüffunktion testen, anstatt ihr blind zu vertrauen.

Webhook-Signaturprüfung — request and response sequence Sequence diagram for Webhook signature testing: GET /webhooks/v1/subscriptions answers 200 OK. POST /webhooks/v1/subscriptions answers 201 Created. DELETE /webhooks/v1/subscriptions/{id} answers 401 Unauthorized. POST /webhooks/v1/deliveries/{id}/replay answers 409 Conflict. Your client Fun API Playground GET /webhooks/v1/subscriptions 200 OK Liste der Webhook-Abonnements (Geheimnisse geschwärzt) POST /webhooks/v1/subscriptions 201 Created Registrieren Sie ein Webhook-Abonnement DELETE /webhooks/v1/subscriptions/{id} 401 Unauthorized Abbestellen POST /webhooks/v1/deliveries/{id}/replay 409 Conflict Replay a delivery attempt — re-sends the real HTTP POST (…
Echte Endpunkte aus dem Katalog – jede der oben genannten Anfragen wird bedient, und jeder angezeigte Statuscode ist ein Statuscode, den dieser Endpunkt tatsächlich zurückgibt.

Wie man es übt

  1. Registrieren Sie ein Abonnement, lösen Sie ein Ereignis aus und prüfen Sie die Signatur mit dem gemeinsamen Geheimnis vor der Verarbeitung.
  2. Ändern Sie ein Byte der Nutzdaten und prüfen Sie, dass die Signaturprüfung fehlschlägt.
  3. Wiederholen Sie eine gespeicherte Zustellung und prüfen Sie, dass der Empfänger dasselbe Ereignis nicht doppelt verarbeitet.
  4. Prüfen Sie eine Vergleichsmethode mit konstanter Laufzeit. Gewöhnliche Zeichenkettenvergleiche können Timing-Informationen preisgeben.
  5. Prüfen Sie im Zustellungsprotokoll die tatsächlich angekommenen Header, statt sie vorauszusetzen.

APIs, um es auszuprobieren

Betroffene Statuscodes

Andere Techniken

Einstiegsanleitung · Alle 39 Mock-REST-APIs

Zuletzt aktualisiert