Webhooks og integrationer
Verificér en webhook-signatur
Beregn signaturen over den rå anmodningskrop, før enhver JSON-parsning, og sammenlign i konstant tid. At serialisere nyttelasten igen ændrer byte, og signaturen passer så aldrig mere.
Trin
- Fang den rå krop som byte. De fleste frameworks giver dig som standard et allerede parset objekt, hvilket allerede er for sent.
- Beregn signaturen over præcis de byte med din endpoints hemmelighed.
- Sammenlign med en konstanttidssammenligning frem for strenglighed.
- Parse først JSON-en, når signaturen er verificeret.
- Afvis alt, der fejler, og log leverings-id-et frem for kroppen.
Sådan kontrollerer du resultatet
En ægte levering verificeres, og den samme nyttelast med ét ændret tegn gør ikke.
Hvad der som regel går galt
- At parse og serialisere igen, før signaturen beregnes.
- En body parser-middleware, der forbruger strømmen før din handler.
- Et simpelt
===på signaturen, som lækker via timing.
Løste det dit problem?
Det hjalp ikke
Skriv til os med platform og version, de trin du tog, det forventede resultat og det arbejdsområde eller den QR-kode, det handler om. Maskér enhver hemmelighed, før du vedhæfter noget.
Skriv til supporten