Pour vérifier qu'un webhook est reçu par SCS, l'appel est authentifié avec les autres paramètres URL. SCS chiffre l'authentification à l'aide d'un algorithme de code d'authentification de message haché (hash message authentication code, HMAC) verrouillé.
Tableau 1. Paramètres de sécurité
Paramètre |
Description |
horodatage |
Nombre de secondes depuis le 1er Janvier 1970 UTC. |
jeton |
Chaîne de 64 caractères alphanumériques générés de manière aléatoire. |
signature |
Chaîne de chiffres hexadécimaux générés par l'algorithme HMAC. |
Tableau 2. Paramètres communs
Paramètre |
Description |
Domaine |
Environnement SCS qui a envoyé le webhook. L'environnement de production est https://www.reservecloud.com/login. L'environnement QA est https://qa.reservecloud.com/login |
action |
Code Action qui a déclenché l'appel webhook. Par exemple, GUEST_ROOM_BLOCK_UPDATED |
nom |
Nom du webhook dans les paramètres. |
Pour vérifier que l'appel webhook a été reçu de SCS, vous devez :
- Tronquer l'horodatage et les valeurs de jeton
- Coder la chaîne concaténée avec l'algorithme HMAC La clé est disponible dans la section Interface des webhooks, dans les paramètres SCS. L'algorithme doit utiliser la fonction de hachage SHA256
- Encoder en hexadécimal le résultat en utilisant la casse inférieure pour les caractères alphabétiques
- Comparer votre résultat au paramètre de signature. Facultativement, vous pouvez vérifier si l'horodatage n'est pas trop loin de l'heure actuelle.