Accès et connexion · 6 novembre 2026

Comment réinitialiser un mot de passe administrateur PrestaShop directement en base de données ?

La réinitialisation se fait en modifiant le champ passwd de la table ps_employee via phpMyAdmin, avec un hash généré dans le même format de cryptage que votre version PrestaShop (bcrypt depuis la 1.7). C'est une manipulation technique sensible qui nécessite une sauvegarde préalable de la base et une bonne connaissance du fichier de configuration cookie_key.

Comment réinitialiser un mot de passe administrateur PrestaShop directement en base de données ?
Résumer cette FAQ avec l’IA

Un mot de passe administrateur oublié, un compte bloqué après plusieurs tentatives, ou un prestataire disparu sans transmettre les accès : ces situations immobilisent totalement la gestion de la boutique. Quand la procédure classique « mot de passe oublié » ne fonctionne pas (email non reçu, boîte mail inaccessible), la réinitialisation directe en base de données reste la solution de secours. Elle exige rigueur et précautions, car une erreur de manipulation peut rendre le back-office inaccessible ou corrompre des données liées aux employés.

Avant toute intervention : sauvegarder la base de données

Aucune modification en base ne doit être tentée sans sauvegarde préalable. Utilisez phpMyAdmin, Adminer ou une commande mysqldump via SSH pour exporter l'intégralité de la base, ou a minima la table ps_employee. Cette précaution permet de revenir en arrière en quelques minutes si la manipulation échoue, par exemple si le hash généré est mal formaté ou si la mauvaise ligne est modifiée. Conservez cette sauvegarde en dehors du serveur de production, sur un poste local ou un espace de stockage externe.

Identifier la bonne table et le bon enregistrement

Dans la base PrestaShop, les comptes administrateurs sont stockés dans la table ps_employee (le préfixe ps_ peut varier selon l'installation, vérifiable dans le fichier config/settings.inc.php). Repérez la ligne correspondant à l'employé concerné grâce à son adresse email, dans la colonne email. Notez l'identifiant (id_employee) pour éviter toute confusion si plusieurs comptes existent avec des noms similaires.

Générer un hash de mot de passe compatible

PrestaShop ne stocke jamais les mots de passe en clair. Depuis la version 1.7, le hachage utilise l'algorithme bcrypt (via la fonction PHP password_hash()), documenté sur php.net. Sur les versions 1.6 et antérieures, PrestaShop utilisait un hachage MD5 salé avec la clé COOKIE_KEY définie dans config/settings.inc.php, ce qui rend la génération manuelle plus complexe.

  • Pour PrestaShop 1.7 et 8.x : générez un hash bcrypt via un script PHP temporaire exécuté sur le serveur, par exemple avec la commande echo password_hash('NouveauMotDePasse', PASSWORD_BCRYPT);. Le résultat (une chaîne commençant par $2y$) est à copier tel quel.
  • Pour PrestaShop 1.6 : le hash doit intégrer la clé de cryptage du site. Un script PHP utilisant la fonction interne Tools::encrypt() du cœur PrestaShop garantit la compatibilité, plutôt qu'un générateur MD5 générique en ligne.

Mettre à jour le champ passwd en base

Dans phpMyAdmin, ouvrez la table ps_employee, localisez la ligne de l'employé et modifiez directement la valeur du champ passwd en collant le hash généré à l'étape précédente. Vérifiez également que le champ active est positionné sur 1, sinon le compte restera désactivé malgré un mot de passe valide. Une requête SQL directe est aussi possible :

UPDATE ps_employee SET passwd = 'HASH_GENERE' WHERE email = '[email protected]';

Exécutez cette requête avec prudence : une clause WHERE mal formulée peut écraser le mot de passe de tous les comptes de la table.

Tester la connexion et sécuriser l'accès

Une fois la modification enregistrée, tentez une connexion au back-office avec le nouveau mot de passe. En cas d'échec, vérifiez trois points fréquents : le format exact du hash (espaces parasites lors du copier-coller), le préfixe de table réellement utilisé, et l'état du champ active. Si la connexion aboutit, changez immédiatement le mot de passe depuis l'interface employés pour repasser par le mécanisme natif de PrestaShop, plus fiable qu'une saisie manuelle en base.

Points de vigilance à retenir

  • Ne jamais utiliser un générateur de hash MD5 générique trouvé en ligne : il ne correspond pas à l'algorithme attendu par PrestaShop 1.7 et suivants.
  • Vérifiez la version exacte de PrestaShop avant de choisir la méthode de hachage, car une incompatibilité bloque totalement l'accès.
  • Si plusieurs boutiques multi-shop partagent la même base, assurez-vous de modifier le bon enregistrement sans affecter les autres comptes.
  • Documentez l'intervention (date, compte modifié) pour garder une traçabilité, utile en cas d'audit de sécurité.

Cette manipulation reste technique et comporte un risque réel d'erreur si elle est réalisée sans expérience des bases de données PrestaShop. Si l'accès administrateur est bloqué, que la version du cryptage pose question ou que l'intervention nécessite un accompagnement sécurisé, Performeer PrestaShop met en relation avec des prestataires qualifiés, sans engagement, pour résoudre la situation rapidement et éviter toute perte de données.

Mots-clés : mot de passe administrateur base de données PrestaShop phpMyAdmin ps_employee bcrypt sécurité back-office

Cette réponse vous a été utile ?
Partagez-la avec un dirigeant qui se pose la même question sur sa boutique.
LinkedInXFacebook

← Toutes les questions