Erreur de la base de données WordPress : [INSERT, UPDATE command denied to user 'soluka7akm0a'@'10.13.20.119' for table 'x4Cd9n_options']INSERT INTO `x4Cd9n_options` (`option_name`, `option_value`, `autoload`) VALUES ('_transient_doing_cron', '1733762266.8267979621887207031250', 'yes') ON DUPLICATE KEY UPDATE `option_name` = VALUES(`option_name`), `option_value` = VALUES(`option_value`), `autoload` = VALUES(`autoload`)
Vous avez installé le CMS PrestaShop et avez oublié par mégarde votre mot de passe pour vous connecter à l’espace d’administration de votre boutique ? Dans un premier temps, vous pouvez tenter de récupérer votre précieux sésame en utilisant la fonction « Mot de passe oublié ». Seulement, il se peut dans certains cas que vous ne receviez pas le mail contenant les informations vous permettant l’accès à votre espace d’administration. Il existe tout de même des astuces pour redéfinir un mot de passe.
Le CMS PrestaShop a une politique rigoureuse pour le stockage des mots de passe des utilisateurs. En effet, les mots de passe sont irréversibles car ils sont soumis à la fonction de hachage MD5. De plus, ils sont salés de manière statique, toujours avec la même chaîne de caractères. Chez PrestaShop, cette chaîne de caractères s’appelle la COOKIE_KEY. Vous la trouverez dans le fichier /config/settings.inc.php. Elle est longue de 56 caractères. Ci-après un exemple de COOKIE_KEY :
dG4bVMkKq2SIISABb7Fs2DIP6TuJcmkOa0mESL1tTOvUUR0urWKA4Rk0
Une fois votre COOKIE_KEY récupérée, vous pouvez choisir votre nouveau de mot passe. Pour l’exemple, nous prendrons le mot de passe suivant : adminPrestaShop4102. Ensuite, concaténez votre COOKIE_KEY avec votre nouveau de mot de passe, comme ceci :
dG4bVMkKq2SIISABb7Fs2DIP6TuJcmkOa0mESL1tTOvUUR0urWKA4Rk0adminPrestaShop4102
Vous êtes maintenant prêt à générer l’empreinte de la chaîne de caractères que vous avez créée à l’étape précédente. Pour ce faire, il faut utiliser la fonction de hachage MD5. Plusieurs applications en ligne proposent ce service, mais vous pouvez également le faire dans votre langage favori. En PHP, la fonction se nomme md5(). Si vous souhaitez utiliser un service en ligne, vous pouvez utiliser le suivant : md5 en ligne. Vous devez obtenir une chaîne de 32 caractères comme celle-ci :
fab942f98cf8de31792c97cd1da17b33
La dernière étape consiste à modifier le mot de passe du compte, dont vous ne vous souvenez pas, enregistré en base de données. Il suffit d’aller dans la table ps_employee et de modifier la colonne passwd pour l’enregistrement de votre choix. Remplacer l’ancienne empreinte par celle que vous venez de créer et le tour est joué. Vous pouvez accéder à l’espace d’administration avec votre nouveau de mot de passe.
La deuxième solution permet de résoudre notre problème sans passer par les étapes de hachage MD5. Il faut tout simplement commencer par créer un nouveau compte client sur le front-office de sa boutique.
Une fois le nouveau compte client créé, tout se passe dans la base de données de votre boutique. Il faut tout d’abord récupérer l’empreinte du mot de passe du compte client que vous venez de créer. Elle se trouve dans la colonne passwd de la table ps_customer. Il ne reste plus qu’à coller cette empreinte pour le compte de votre choix dans la colonne passwd de la table ps_employee. Vous pourrez vous connecter à l’espace d’administration avec le même mot de passe que le compte client créé précédemment.
Les tables peuvent porter un autre préfixe que ps_, à savoir celui qui a été configuré lors de la création de votre boutique. Il est d’ailleurs recommandé pour des questions de sécurité d’utiliser une chaîne de caractères aléatoire comme préfixe de table. Par exemple : pMl5_.