Saltar al contenido principal
Base de conocimientosv15.1

Protege tu webhook

Confirma que las solicitudes de webhook provienen de Celoxis

Cada webhook que envía Celoxis incluye un sello de seguridad (denominado firma) para que su sistema receptor pueda confirmar que el mensaje proviene realmente de Celoxis y que no ha sido modificado durante el trayecto. Esta página explica cómo se crea dicha firma y cómo verificarla.

Lo que Celoxis envía con cada solicitud

Junto con el mensaje, Celoxis incluye algunos detalles adicionales en los encabezados de la solicitud:

  • Una marca de tiempo (X-Celoxis-Timestamp): la hora exacta en que se firmó el mensaje.
  • Una firma (X-Celoxis-Signature): el sello de seguridad, creado a partir de su Secreto y el mensaje.
  • Un ID de entrega (X-Celoxis-Delivery-Id): una referencia única para esa entrega, útil para sus registros.

Cómo se crea la firma

  1. Celoxis toma la marca de tiempo y el cuerpo del mensaje y los combina.
  2. Luego, utiliza tu clave secreta con un método estándar llamado HMAC-SHA256 para convertir ese texto combinado en una firma única. La misma clave secreta y el mismo mensaje siempre producen la misma firma, pero esta no se puede invertir para revelar la clave secreta.
  3. Esa firma se envía junto con la solicitud.

Cómo verificar la solicitud desde su lado

  1. Utilice el mensaje tal como lo recibe. No lo reformatee ni lo reconstruya previamente; incluso un pequeño cambio hará que la firma no coincida.
  2. Toma la marca de tiempo y la firma de los encabezados de la solicitud.
  3. Recrea la firma tú mismo utilizando el mismo método HMAC-SHA256 con tu copia del secreto.
  4. Compara las dos firmas. Si coinciden, la solicitud es auténtica; acéptala. Si no coinciden, recházala.
  5. (Recomendado) También rechace la solicitud si la marca de tiempo es demasiado antigua (por ejemplo, más de 5 minutos), para que no se pueda reenviar un mensaje antiguo posteriormente. Esto es opcional; Celoxis no lo exige.
Prueba gratuita.Solicita una demostración.