Intégration d’un Webhook avec SESAR : tout ce qu’il faut savoir

Comment intégrer un Webhook avec SESAR ?

Le webhook de SESAR permet de notifier votre système lorsqu'un fichier a été reçu et traité. Il repose sur un appel HTTP contenant un objet structuré, et doit être configuré correctement pour assurer une intégration fluide avec votre environnement.

Lorsqu'un fichier est déposé via SESAR, celui-ci envoie une notification (un « hook ») à une adresse que vous avez définie. Cette notification contient un objet chiffré, qui doit être reçu, déchiffré et traité par votre service.

Prérequis

  • WebHookKey : clé AES 256 bits, générable via SECT Tools.
  • WebHookIv : vecteur d'initialisation (IV) 128 bits, également générable via SECT Tools.
  • Ces deux valeurs sont utilisées pour chiffrer et déchiffrer les StoreManifest, et doivent être protégées dans votre environnement.
Attention : après le premier démarrage de SESAR, ces valeurs sont cryptées dans un fichier « .sesar » propre à votre configuration. Ce fichier ne doit pas être déplacé.

Étape 1 : Préparer l'adresse de réception du webhook

  1. Publiez sur votre serveur le point d'entrée qui recevra les notifications de SESAR.
  2. Donnez à ce point d'entrée une URL qui suit le format https://[adresse_serveur]/[endpoint]/[methode]
  3. Configurez ce point d'entrée pour accepter une requête POST envoyée avec l'en-tête Content-Type: application/json.

Par exemple : https://localhost/Test.asmx/SESARHook

Étape 2 : Recevoir et lire la notification

  1. Récupérez le corps de la requête POST envoyée par SESAR.
  2. Lisez le champ CryptedObject : il contient le manifeste chiffré en base64.
  3. Lisez le champ HashKey : il contient le SHA512 de la clé publique utilisée pour le chiffrement, également en base64.

Le corps de la requête a la forme suivante :

{
"args": {
"CryptedObject": "...",
"HashKey": "..."
}
}

Voici deux exemples d'implémentation en C#.

En ASMX

[WebMethod]
[ScriptMethod(UseHttpGet = false, ResponseFormat = ResponseFormat.Json)]
public void SESARHook(SesarWebHook args)
{
// Traitement ici
}

En ASP.NET MVC

[HttpPost]
public string SESARHook([FromBody] HookArgs SEManifest)
{
var crypted = SEManifest.args.CryptedObject;
var hash = SEManifest.args.HashKey;

// Traitement ici
return "OK";
}

public class HookArgs
{
public SesarWebHook args { get; set; }
}

public class SesarWebHook
{
public string CryptedObject { get; set; }
public string HashKey { get; set; }
}

Étape 3 : Déchiffrer le CryptedObject

  1. Utilisez le SDK de Secure Exchanges pour déchiffrer l'objet reçu, le StoreManifest.
  2. Fournissez la clé AES 256 bits dans base64Key et le vecteur d'initialisation (IV) 128 bits dans base64Iv.
  3. Désérialisez le résultat obtenu en objet StoreManifest.
var jsonObject = CryptoHelper.DecryptStringFromBytes(
Convert.FromBase64String(cryptedObject),
Convert.FromBase64String(base64Key),
Convert.FromBase64String(base64Iv)
);
StoreManifest manifest = SerializationHelper.DeserializeFromJson<StoreManifest>(jsonObject);

Dépannage

Le webhook fonctionne selon les règles suivantes :

  • Le webhook est appelé toutes les 30 secondes si des fichiers sont disponibles.
  • Un code HTTP 200 signifie que le traitement a réussi.
  • Si le webhook échoue ou retourne un autre code, il sera réessayé.
  • Le délai d'attente de la réponse est de 5 minutes.

Besoin d'aide ?

Notre équipe est disponible pour vous accompagner. Écrivez-nous à support@secure-exchanges.com

Articles connexes


    • Related Articles

    • Qu'est-ce que SESAR ?

      SESAR (Secure Exchanges Send And Receive) est un service Windows conçu pour intégrer et sécuriser vos échanges effectués via Secure Exchanges, qu'ils soient stockés localement ou dans le cloud. Il agit comme une véritable voûte pour vos données, que ...
    • Comment décrypter un message sauvegardé sur SESAR avec SECT Tool ?

      Le décryptage des messages sauvegardés sur SESAR peut être réalisé en suivant une série d'étapes simples à l'aide de l'outil SECT Tool. Voici un guide détaillé pour vous accompagner tout au long du processus. Étape 1 : Préparer les fichiers et ouvrir ...
    • Comment installer SESAR (Secure Exchanges Send And Received) ?

      Ce guide simple et détaillé vous accompagne dans la configuration et l'installation de SESAR (Secure Exchanges Send And Received). Prérequis La machine sur laquelle SESAR sera installé doit avoir les spécifications suivantes : Système d'exploitation ...
    • Comment configurer SESAR avec Azure Active Directory?

      Cette procédure explique comment relier SESAR à votre Azure Active Directory afin que Secure Exchanges puisse lire vos groupes et attribuer automatiquement les licences à vos utilisateurs. Vous créez d'abord une application dans Azure, vous relevez ...
    • Quels sont les paramètres de configuration de SESAR?

      Comme SESAR fonctionne par « tenant », une organisation pourrait avoir plusieurs « tenants ». Le fichier de configuration est donc bâti de sorte que le service soit installé une seule fois, mais qu'il puisse récupérer les informations de tous les « ...