> ## Documentation Index
> Fetch the complete documentation index at: https://docs.riqra.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Seguridad

Como buena práctica de seguridad, debes validar que la información que llega a tu endpoint proviene efectivamente de la plataforma y no fue alterada en tránsito.

Un método simple es configurar un `secretKey`.

## Validación del payload

Cuando defines tu `secretKey`, la plataforma la usa para crear una firma hash con el payload.

Esta firma hash se envía en cada solicitud mediante el header **X-Riqra-Signature**. Supón que tienes un servidor básico que escucha webhooks así:

```python theme={null}
import hashlib
import hmac

signatureHeader = 'sha256=****************************'

key = "YOUR_SECRET_KEY"
payload = '{"event":"","data":{} }'
signature = hmac.new(key.encode('utf-8'), payload.encode('utf-8'), hashlib.sha256).hexdigest()

if not f'sha256={signature}' == signatureHeader:
  raise Error
```

El objetivo es calcular un hash con tu `secretKey` y asegurarte de que coincida con la firma recibida. La firma usa `sha256`.

> Independientemente de la implementación que utilices, la firma comienza con `sha256` y se calcula usando tu `secretKey` y el payload recibido.
