Accès Backoffice PrestaShop perdu

Photo by Georgy Rudakov on Unsplash

Il peut arriver, parfois, que vous ne puissiez plus accéder à l'espace de gestion, le backoffice, de votre boutique PrestaShop.

Ce souci peut être vite catastrophique si on ne connaît pas les méthodes de contournement.

Sachez, que je ne vais pas vous expliquer comment pirater un site PRestaShop mais bien comment reprendre la main sur votre boutique en ligne.

La récupération de mot de passe

Pour des raisons évidentes de sécurité, PrestaShop conserve qu'une version cryptée des mots de passe, que ce soit pour vos comptes employés ou pour vos comptes clients.

Le codage de ces mots de passe se fait en utilisant une clé de codage unique générée automatiquement à l'installation de votre boutique.

De ce fait, vous ne pourrez jamais récupérer un mot de passe, vous ne pourrez qu'en créer un nouveau.

Créer un nouveau mot de passe

Demander un nouveau mot de passe

Si votre boutique est en ligne et que vous receviez les emails de cette boutique, alors vous devriez pouvoir cliquer sur le lien de mot de passe oublié.

Liens vers le formulaire de mot de passe oublié

Ce qui vous propulse sur le formulaire de réinitialisation de mot de passe où vous devez renseigner l'adresse email de votre compte employé pour recevoir automatiquement un lien vous permettant de réinitialiser le mot de passe de ce compte employé.

Formulaire de réinitialisation du mot de passe d'un employé PrestaShop

Réinitialisation manuelle en base de données

Dans cette section nous allons toucher à des données sensibles et surtout toute modification est définitive, si vous ne vous sentez pas capable de gérer cela vous-même, n'hésitez pas à me contacter pour une assistance personnalisée.

  • Accédez aux fichiers de votre boutique, en local ou par un client FTP en ligne
  • Récupérez la clé de Cookie définie à l'installation de votre boutique
    • PrestaShop 1.6 et versions précédentes : Dans le fichier /config/settings.inc.php
      define('_COOKIE_KEY_', '5wrXIxvBCDrDFcOSva54tVT37ZmKzcHNbLvr9DojhdkrnU2jpDxTSiFC');
    • PrestaShop 1.7 : Dans le fichier /app/config/parameters.php
      'cookie_key' => 'gqgrqp6gwbOSwjcTF7p7DhLCiDCmrawR5fODIddGGCSbeZoLMWPwaVOZ'
  • Dans un logiciel de texte simple (bloc note), combinez la valeur de la clé de Cookie à votre nouveau mot de passe.
    Si, par exemple, votre nouveau mot de passe est Toto123 en 1.6 cela donnera un truc du genre :
    5wrXIxvBCDrDFcOSva54tVT37ZmKzcHNbLvr9DojhdkrnU2jpDxTSiFCToto123
    Et en 1.7, sur la base de notre exemple, cela donnera
    gqgrqp6gwbOSwjcTF7p7DhLCiDCmrawR5fODIddGGCSbeZoLMWPwaVOZToto123
  • Avec cette chaîne de caractères, nous devons générer ce qu'on nomme son hash md5. Pour cela il existe 2 méthodes.
    • Grâce au site md5.fr où il vous suffit de coller la chaîne et cliquer sur le bouton de génération du hash qu'il faudra copier pour le coller dans la base de données.
      • hash 1.6 : dcf6c7a3f3ed35e9e1e2152b6305a1c8
      • hash 1.7 : a0074e7053207466d9fba2c52e807dc8
    • Vous pouvez aussi directement le faire dans votre base de données en modifiant l'enregistrement de votre compte employé dans la table ps_employee puisque vous pouvez exécuter la modification en forçant le codage md5 sur le champs.
  • Vous l'aurez compris, vous devez vous connecter à votre base de données à l'aide de votre outil préféré, généralement phpmyadmin, et vous rendre sur la table ps_employee sachant que le préfixe ps_ est un exemple puisque vous en avez défini un plus personnalisé lors de l'installation de votre boutique PrestaShop, donc à vous d'adapter le nom de la table à votre configuration.
    Identifiez le compte dont vous souhaitez réinitialiser le mot de passe et cliquez sur le lien modifié.
    Arrivé ici, soit vous collez le hash obtenu sur le site md5.fr dans le champs passwd, soit vous utilisez la technique générant automatiquement le hash.
  • Et voilà vous pouvez retourner sur la page de login de l'administration de votre boutique PrestaShop

Discussions