Desarrolladores
Docs/API y webhooks

Verificar firmas de webhooks

Verifique las firmas HMAC, verifique las marcas de tiempo y maneje webhooks duplicados.

1 minutos de lectura5 secciones
En esta página

Conservar el cuerpo original de la solicitud

Verifique los bytes recibidos antes de analizar/volver a serializar JSON. Incluso los espacios en blanco cambian la MAC. Configure el manejo del cuerpo sin formato de su marco en consecuencia.

Encabezados

Utilice Tembuilder-Event, Tembuilder-Delivery-Id, Tembuilder-Attempt, Tembuilder-Timestamp y Tembuilder-Signature. La firma es v1= más un hexadecimal HMAC-SHA256. El secreto de firma revelado es base64url sin relleno; decodificarlo en bytes primero.

Bytes firmados

timestamp + "." + raw_body

Calcule HMAC-SHA256 con el secreto decodificado y compárelo en tiempo constante.

Marca de tiempo y duplicados

Aplique una ventana de aceptación adecuada en el receptor, por ejemplo de ±5 minutos si resulta apropiado para sus relojes y su operación. Esta es una recomendación para el receptor, no una garantía de tiempo de entrega de Tembuilder. Elimine los ID de entrega duplicados y concilie el estado del negocio mediante el ID de renderizado. No suponga que las notificaciones se reciben exactamente una vez ni en orden.

Prueba antes de la producción

Aceptar una prueba correctamente firmada. Rechace un cambio de cuerpo de un byte y una marca de tiempo obsoleta. Entregue la misma identificación dos veces y verifique que los efectos secundarios comerciales no estén duplicados. Mantenga los secretos y las cargas útiles confidenciales fuera de los registros.

Buscar documentación