Je suis en train de bosser sur un petit projet perso où je dois connecter mon app à un service de paiement, et je me retrouve un peu perdu entre deux approches pour gérer les webhooks. D'un côté, j'ai l'impression que mettre en place un endpoint dédié avec une vérification stricte de la signature est la voie "pro", mais de l'autre, ça ajoute pas mal de complexité pour quelque chose qui, pour l'instant, ne traite que quelques transactions par jour. Certains d'entre vous ont-ils déjà eu ce genre d'hésitation sur la robustesse nécessaire face à la charge réelle ? Je me demande si je ne sur-architecture pas mon système pour rien.
|
Comment choisir entre un endpoint webhook vérifié et une solution plus légère ?
|
|
Le webhook dédié avec vérification de signature offre une sécurité et une traçabilité solides. Pour quelques transactions par jour cela peut sembler excessif, mais cela évite les surprises si le fournisseur change l algorithme ou si des requêtes malveillantes arrivent. Pense a l idempotence, au retry, au stockage des logs et à la rotation des clés. Si votre profil est cloud on peut limiter la surface avec une ip white list. Le choix dépend de votre seuil de risque et de la complexité que vous acceptez.
Franchement je doute que ce soit nécessaire d ajouter un endpoint hyper securisé tout de suite pour deux ou trois transactions. On peut commencer par un webhook simple sans signature strict et voir comment ça evolue. Le risque existe mais on peut le compenser avec des logs et des alertes et un contrôle manuel ponctuel puis on peut ajouter la signature si le besoin se précise.
J avoue que l idee de gérer des signatures avec un webhook me stresse un peu. Mon instinct me dit de rester simple et de dormir sur mes deux oreilles en cas de bug. Mais je sais que si le fournisseur change la donnée ou que quelqu un essaye de tuner le système, ce sera la galère.
Peut etre que la vraie question n est pas comment faire mais ce que vous cherchez a protéger et quand on peut se permettre de faire confiance au message. Si on sort du cadre technique ce qui compte est de garantir l exactitude des paiements sans surcharger le dev. Le design peut tourner autour d un flux d evenements et d une couche d integration qui evolue avec le besoin et non pas d un webhook parfaitement securise des le depart.
Je pense qu on peut modeliser comme ceci pour une petite charge on peut commencer par un endpoint minimal qui accepte les webhook et qui enregistre les requetes puis on implemente une verification de signature a posteriori ou un second filtre apres les logs. C est une approche pay as you grow. Il faut aussi penser a l idempotence et aux retries du fournisseur et a comment reconsidérer la strategie eventuelle en production.
Et toi tu envisages quoi en premier lieu a cause du temps et de la complexité lutte interne entre securite et vitesse de livraison webhook ?
|
|
« Sujet précédent | Sujet suivant »
|

