Passer au contenu principal
Les webhooks permettent de transmettre des événements à un serveur Web externe. Auth0 offre plusieurs intégrations qui envoient automatiquement les événements vers des systèmes tiers de gestion et d’analyse des journaux. Toutefois, si votre système tiers n’est pas pris en charge, vous pouvez configurer une intégration de webhook personnalisée.
Vous ne pouvez configurer qu’une seule URL de payload par configuration de webhook, mais vous pouvez utiliser la même URL pour plusieurs flux. Le payload sera transmis au format JSON Lines. Gardez-le à l’esprit lorsque vous traitez les journaux dans votre configuration de webhook.

Configurer le point de terminaison de l’API

Vous créerez une API qui expose une seule route (par exemple, /api/logs) et qui accepte les requêtes HTTP POST.
Les certificats HTTP auto-signés ne sont pas pris en charge.

Configurer le flux de journal

  1. Accédez à Auth0 Dashboard > Monitoring > Streams, puis cliquez sur Create Stream.
    Auth0 Dashboard Monitoring Streams
  2. Sélectionnez Custom Webhook et saisissez un nom unique pour votre nouveau flux.
  3. Configurez les paramètres suivants :
    Onglet Settings de Custom Webhook dans Auth0 Dashboard Monitoring Streams
    ParamètreDescription
    NomUn nom d’affichage unique pour distinguer cette intégration des autres.
    URL du payloadL’URL à laquelle les payloads d’événement sont envoyés sous forme de requêtes HTTP POST.
    Jeton d’autorisation(Facultatif) La valeur de l’en-tête Authorization de la requête.
    Type de contenuLe type de média du payload qui sera transmis au webhook.
    Format du contenuRecevez les données sous forme de lignes JSON, de tableaux ou d’objets.
    Filtrer par catégorie d’événementListe des filtres du flux de journal.
    Curseur de départ(Facultatif) La date et l’heure précises à partir desquelles démarrer le flux.
  4. Cliquez sur Save.

Tester la configuration

  1. Accédez à la vue Health et confirmez que Stream Status est Active.
  2. Effectuez une action qui crée un événement dans les journaux du locataire, comme une ouverture de session, un échange de jeton ou un appel à la Management API d’Auth0.
  3. Confirmez que l’événement a été créé dans les journaux de votre locataire.
  4. Confirmez que votre API a reçu une requête HTTP POST contenant les données de l’événement.
  5. Retournez à la vue Health et confirmez qu’aucune erreur ne s’est produite.

Résoudre les problèmes de webhooks

Si votre webhook ne fonctionne pas, il peut être difficile d’en trouver la cause. Les webhooks étant asynchrones, leur test peut vous obliger à déclencher le webhook, à attendre, puis à vérifier la réponse (si tant est que vous en ayez reçu une). Cela dit, il existe des solutions plus efficaces que le processus décrit ci-dessus. Même si les détails complets du dépannage d’un webhook particulier dépassent le cadre de cet article, voici quelques étapes que vous pouvez suivre pour déboguer :
  1. Consultez Auth0 Dashboard > Monitoring > Logs pour y trouver des messages utiles.
  2. Analysez les requêtes effectuées par votre webhook à l’aide d’un outil comme Mockbin, Beeceptor ou RequestBin (auto-hébergé).
  3. Simulez des requêtes à l’aide de cURL ou de Postman.
  4. Testez le code de votre webhook localement à l’aide d’un outil comme localtunnel ou ngrok.
  5. Utilisez un outil comme Runscope ou Assertible pour surveiller l’ensemble du flux d’exécution.

En savoir plus