Entwickler
Docs/API und Webhooks

Webhook-Signaturen überprüfen

Überprüfen Sie HMAC-Signaturen, überprüfen Sie Zeitstempel und verarbeiten Sie doppelte Webhooks.

1 Minuten Lesezeit5 Abschnitte
Auf dieser Seite

Unveränderten Request-Body bewahren

Überprüfen Sie die empfangenen Bytes, bevor Sie JSON analysieren/erneut serialisieren. Sogar Leerzeichen ändern den MAC. Konfigurieren Sie die Raw-Body-Verarbeitung Ihres Frameworks entsprechend.

Kopfzeilen

Verwenden Sie Tembuilder-Event, Tembuilder-Delivery-Id, Tembuilder-Attempt, Tembuilder-Timestamp und Tembuilder-Signature. Die Signatur ist v1= plus ein Hex HMAC-SHA256. Das offenbarte Signaturgeheimnis ist unpadded base64url; dekodieren Sie es zuerst in Bytes.

Signierte Bytes

timestamp + "." + raw_body

Berechnen Sie HMAC-SHA256 mit dem entschlüsselten Geheimnis und vergleichen Sie es in konstanter Zeit.

Zeitstempel und Duplikate

Legen Sie ein geeignetes Empfängerannahmefenster fest, zum Beispiel ±5 Minuten, wenn es für Ihre Uhren und Ihren Betrieb geeignet ist. Hierbei handelt es sich um eine Empfängeranweisung, nicht um eine Tembuilder-Lieferzeitgarantie. Deduplizieren Sie Liefer-IDs und gleichen Sie den Geschäftsstatus anhand der Render-ID ab. Gehen Sie nicht von genau einmaligen oder auftragsbezogenen Benachrichtigungen aus.

Test vor der Produktion

Akzeptieren Sie einen korrekt unterzeichneten Test. Eine Ein-Byte-Body-Änderung und einen veralteten Zeitstempel ablehnen. Stellen Sie dieselbe ID zweimal bereit und stellen Sie sicher, dass geschäftliche Nebenwirkungen nicht dupliziert werden. Halten Sie Geheimnisse und sensible Nutzlasten von Protokollen fern.

Dokumentation durchsuchen