🔌 Module 37
4

Activation et sécurisation de l'API : le protocole sans erreur

Leçon 4 / 5 — 2h

« Pour atteindre la vérité, il faut une fois dans la vie douter de tout. »

R

René Descartes

Le Méthodique · 1596-1650

Étape 1 — Activation dans le back-office

Rendez-vous dans Paramètres avancés → Webservice. Activez l'option « Activer le service web de PrestaShop ». Sans cette action, toutes vos requêtes retourneront du HTML au lieu d'une réponse API structurée.

Pré-requis critique : votre boutique doit fonctionner exclusivement en HTTPS. Une clé API transmise en HTTP est une clé compromise — elle transite en clair sur le réseau.

Étape 2 — Création de la clé d'accès

Cliquez sur « Ajouter une clé ». PrestaShop génère une clé de 32 caractères alphanumériques. Conservez-la immédiatement dans un gestionnaire de secrets (Vault, .env protégé, secrets CI/CD) — elle ne sera plus affichée en clair après sauvegarde.

Étape 3 — Permissions granulaires

Pour chaque ressource, cochez uniquement les droits nécessaires :

  • GET — lecture
  • POST — création
  • PUT — modification
  • DELETE — suppression
  • HEAD — vérification d'existence

Une clé avec tous les droits sur toutes les ressources est une bombe à retardement. Principe du moindre privilège : votre script de synchronisation produits n'a besoin que de GET sur products et combinations.

Étape 4 — Authentification HTTP Basic

Le piège classique : l'authentification utilise la clé comme login, et un mot de passe vide. Pas de Bearer token, pas de header Authorization JSON — HTTP Basic pur.

curl -u VOTRE_CLÉ_API: https://votre-boutique.fr/api/products?output_format=JSON

Notez le deux-points après la clé : il indique un mot de passe vide. L'oublier génère une erreur 401 que la documentation officielle n'explique pas clairement.

A retenir : Créez une clé API avec les permissions minimales requises pour votre cas d'usage, stockez-la dans une variable d'environnement, et testez immédiatement avec un curl -u avant d'écrire une seule ligne de code.

Questions & Réponses

Une question sur cette leçon ? L'IA répond automatiquement.

Vos questions et les réponses IA sont publiques et enrichissent le cours pour tous. Votre email est utilisé uniquement pour l'authentification (base légale : intérêt légitime, durée : 3 ans). Politique de confidentialité.