Listes d'adresses IP autorisées

L'authentification permet de vérifier que l'appelant connaît votre mot de passe. Une liste blanche d'adresses IP limite les sources d'où l'appel peut provenir ; ainsi, un jeton divulgué ne suffit pas à lui seul. Configurez-la pour chaque webhook, dans « Paramètres avancés » -> « Liste blanche d'adresses IP ».

Cette règle s'applique en plus de toute authentification utilisée par le webhook, y compris si celle-ci est définie sur « None ». Toute requête provenant d'une autre adresse est rejetée avec le message 403 et la raison ip_not_allowed, avant même que le jeton ou la signature ne soient vérifiés.

Remplir la liste

Une entrée par ligne, dans la limite de 50 :

  • une adresse IPv4 ou IPv6 unique, telle que 203.0.113.10 ou 2001:db8::1
  • une plage CIDR, telle que 203.0.113.0/24 ou 2001:db8::/32

La plupart des expéditeurs qui méritent d'être ajoutés à une liste blanche publient leurs plages d'adresses de sortie : c'est le cas notamment de Stripe, GitHub, Shopify et Square. Copiez ces plages et vérifiez-les à nouveau lorsque l'expéditeur annonce un changement : une liste blanche qui n'est jamais mise à jour finit par rejeter du trafic légitime.

Quelles requêtes vérifie-t-il ?

Demande La liste blanche s'applique
Un appel vers l'URL du webhook Oui
Un appel vers l'URL du proxy de l'application Non, ceux-ci nous parviennent depuis les serveurs d'Shopify, et non depuis votre expéditeur.
Une course programmée Non, c'est nous qui faisons la demande nous-mêmes
L'action Shopify Flow qui appelle ce webhook Non
Envoyer des tests et des rediffusions à partir de l'historique Non

C'est pourquoi une liste blanche ne remplace pas l'authentification : plusieurs voies d'accès légitimes au webhook ne passent pas par celle-ci.

L'adresse que nous comparons

Nous comparons l'adresse d'où provient effectivement la requête. Si un élément s'interpose entre votre expéditeur et nous (un proxy d'entreprise, une passerelle API, un tunnel, un CDN), c'est cette adresse-là que vous devez ajouter à la liste blanche, et non celle du serveur d'origine.

La manière la plus rapide de le trouver : envoyez une requête avec la liste blanche vide, ouvrez l'entrée sur Historique et dépannage, puis relevez l'adresse que nous avons enregistrée.

Quand ça tourne mal

Une requête rejetée apparaît toujours dans l'historique avec les adresses 403 et ip_not_allowed ; vous pouvez ainsi voir l'adresse qui a été refusée et l'ajouter. Aucune requête n'est supprimée sans notification.

Connexes