AccueilđŸ‡«đŸ‡·Chercher

Webhook

Un webhook, aussi appelĂ© lien de rappel HTTP[1] ou point d’ancrage Web[1], est en programmation Web une mĂ©thode permettant d'accroĂźtre ou de modifier le comportement d'une page Web ou d'une application Web avec des fonctions de rappels personnalisĂ©es. Ces fonctions peuvent ĂȘtre modifiĂ©es et gĂ©rĂ©es par des utilisateurs et dĂ©veloppeurs tiers qui ne sont pas nĂ©cessairement affiliĂ©s au site Web ou Ă  l'application d'origine. Le terme « webhook » a Ă©tĂ© inventĂ© par Jeff Lindsay en 2007 Ă  partir du terme de programmation informatique hook.

Le format est gĂ©nĂ©ralement le JSON. La requĂȘte est effectuĂ©e comme une requĂȘte HTTP POST.

Fonction

Les webhooks sont des « fonctions de rappels HTTP dĂ©finies par l'utilisateur »[2]. Ils sont gĂ©nĂ©ralement dĂ©clenchĂ©s par un Ă©vĂ©nement, comme l'envoi de code vers un dĂ©pĂŽt[3] ou un commentaire publiĂ© sur un blog[4]. Lorsque cet Ă©vĂ©nement se produit, le site source envoie une requĂȘte HTTP Ă  l'URL configurĂ©e pour le webhook. Les utilisateurs peuvent les configurer afin que des Ă©vĂ©nements sur un site invoquent un comportement sur un autre.

Les utilisations courantes sont de dĂ©clencher des builds avec des systĂšmes d'intĂ©gration continue ou de notifier les systĂšmes de suivi des bugs[5]. Étant donnĂ© que les webhooks utilisent HTTP, ils peuvent ĂȘtre intĂ©grĂ©s aux services Web sans ajouter de nouvelle infrastructure[6].

Authentifier la notification d'un webhook

Lorsque le client (le site Web ou l'application d'origine) effectue un appel Webhook vers le serveur d'un utilisateur tiers, la requĂȘte POST entrante doit ĂȘtre authentifiĂ©e afin d'Ă©viter une usurpation d'identitĂ© Ă©lectronique. DiffĂ©rentes techniques pour authentifier le client sont utilisĂ©es :

  • Le point d'arrivĂ©e peut choisir de conserver une liste d' adresses IP pour les sources connues des requĂȘtes acceptables.
  • L'authentification HTTP peut ĂȘtre utilisĂ©e pour authentifier le client[7].
  • Le webhook peut inclure des informations sur le type d'Ă©vĂ©nement et un secret ou une signature pour le vĂ©rifier.
  • Une signature HMAC peut ĂȘtre incluse comme en-tĂȘte HTTP. GitHub, Stripe[8] et Facebook[9] utilisent cette mĂ©thode.
  • L'authentification TLS mutuelle peut ĂȘtre utilisĂ©e lorsque la connexion est Ă©tablie. Le point de terminaison (le serveur) peut ensuite vĂ©rifier le certificat du client[10].

Voir aussi

Références

  1. « lien de rappel HTTP », Grand Dictionnaire terminologique, Office québécois de la langue française (consulté le ).
  2. « Webhooks », Atlassian (consulté le )]
  3. About Webhooks - GiHhub Help
  4. WordPress Webhooks
  5. Google Project Hosting - Post-Commit Web Hooks
  6. What are WebHooks and How Do They Enable a Real-time Web?
  7. « DocuSign Connect Now Includes Basic Authentication Support », DocuSign, DocuSign, Inc. (consultĂ© le ) : « the Connect notification service has been updated to support the Basic Authentication scheme with customers’ Connect servers (listeners). »
  8. « Checking Webhook Signatures », Stripe, Stripe, Inc (consulté le )
  9. « Getting Started - Graph API - Documentation - Facebook for Developers », Facebook, Facebook, Inc. (consulté le )
  10. « Mutual TLS: Stuff you should know », DocuSign, DocuSign, Inc. (consultĂ© le ) : « Mutual TLS plus Client Access Control enables your listener app to ensure that the Connect notification message was sent by DocuSign and that it wasn’t modified en route. »

Liens externes

Cet article est issu de wikipedia. Text licence: CC BY-SA 4.0, Des conditions supplĂ©mentaires peuvent s’appliquer aux fichiers multimĂ©dias.