Clés de sécurité de wp-config
Les clés de sécurité de WordPress sont huit longues chaînes inscrites dans le fichier wp-config.php, qui servent à signer les cookies de connexion du site.
Définition
Les clés de sécurité de WordPress sont huit longues chaînes inscrites dans le fichier wp-config.php, qui servent à signer les cookies de connexion du site. Elles n’ouvrent aucun accès et ne chiffrent aucune donnée. Les remplacer déconnecte tout le monde d’un coup, ce qui en fait le seul geste capable de fermer une session volée.
À quoi servent les clés de sécurité
À prouver qu’un cookie de connexion a bien été émis par ce site, et par aucun autre.
Quand une personne se connecte, WordPress ne garde pas son mot de passe dans le navigateur. Il dépose un cookie qui dit en substance « ce visiteur est le compte numéro 2, jusqu’à telle date », puis il signe ce message avec les clés inscrites dans wp-config.php. À chaque page, le serveur recalcule la signature et compare. Une signature qui ne correspond pas fait retomber le visiteur sur la page de connexion.
Deux conséquences suivent. Un cookie fabriqué sur un autre site, ou modifié à la main pour se déclarer administrateur, ne passe pas, parce que son auteur ne connaît pas les clés. Et le jour où les clés changent, tous les cookies déjà émis deviennent illisibles d’un seul coup, y compris ceux qui étaient légitimes. C’est l’effet recherché après une intrusion.
Les huit clés, et ce que chacune signe
Quatre clés et quatre sels, par paires, pour quatre usages distincts.
| Paire | Ce qu’elle protège |
|---|---|
AUTH_KEY et AUTH_SALT | le cookie d’authentification servi en clair |
SECURE_AUTH_KEY et SECURE_AUTH_SALT | le même cookie sur une connexion chiffrée |
LOGGED_IN_KEY et LOGGED_IN_SALT | le cookie qui indique simplement qu’une personne est connectée |
NONCE_KEY et NONCE_SALT | les jetons à usage unique des formulaires de l’administration |
Dans le fichier, chaque clé est une ligne de la forme define( 'AUTH_KEY', 'une longue valeur aléatoire' );, et les huit lignes se suivent sous un commentaire qui les présente comme uniques. La documentation anglophone les appelle salts et security keys, ce qui explique que les générateurs et les articles trouvés en ligne parlent de salts pour désigner exactement ces huit lignes.
Le mot « sel » vient de la cryptographie : c’est une valeur ajoutée avant le calcul d’une empreinte, pour que deux installations qui partagent la même donnée ne produisent jamais la même empreinte. Les huit valeurs doivent donc être longues, aléatoires et différentes les unes des autres. WordPress en génère de soixante-quatre caractères.
Quand faut-il les changer
Rarement en routine, impérativement après une compromission.
| Situation | Rotation des clés |
|---|---|
| Site nettoyé après une intrusion | obligatoire, avant la remise en ligne |
| Départ d’un prestataire ou d’un salarié qui avait un compte | recommandée, avec le retrait du compte |
| Mot de passe d’un administrateur retrouvé dans une fuite | recommandée, en plus du changement de mot de passe |
| Sauvegarde restaurée qui date d’avant l’intrusion | obligatoire, la copie contient les anciennes clés |
| Site sain, aucun incident | inutile, ce n’est pas un mot de passe à faire tourner tous les trimestres |
Le raccourci à éviter. Changer les mots de passe et republier le site. Un mot de passe modifié n’invalide pas les cookies déjà émis : la session ouverte par l’intrus continue de fonctionner jusqu’à sa date d’expiration, avec les droits du compte qu’il a utilisé. Sans rotation des clés, le nettoyage laisse une porte ouverte qui ne se voit dans aucun fichier.
Comment les remplacer
Quatre minutes, et la seule précaution est de savoir se reconnecter ensuite.
Copier le fichier de configuration
Une copie de wp-config.php hors du site, avant d’y toucher. Le fichier contient aussi les identifiants de la base de données : une erreur de collage met le site hors ligne.
Générer huit valeurs neuves
Le service officiel https://api.wordpress.org/secret-key/1.1/salt/ renvoie les huit lignes prêtes à coller, différentes à chaque appel. Aucune inscription, aucune donnée envoyée.
Remplacer les huit lignes existantes
Les anciennes se remplacent en entier, sans en laisser une seule. Une clé oubliée continue de valider les cookies qu’elle a signés.
Se reconnecter et vérifier
Le site affiche la page de connexion pour tout le monde, y compris vous. Une page blanche à ce moment signale une erreur de syntaxe dans le fichier, que la copie de l’étape 1 corrige.
Les valeurs se tirent au hasard : il n’y a rien à retenir, rien à choisir, et aucune raison de les composer soi-même. Une valeur trop courte ou réutilisée d’un site à l’autre annule l’intérêt du procédé, puisque deux installations produiraient alors des signatures comparables.
Sur les hébergements qui proposent une extension de sécurité, la même opération existe souvent sous un bouton nommé rotation des sels ou invalidation des sessions. Le résultat est identique.
Ce que la rotation coupe, et ce qu’elle ne coupe pas
Elle ferme des sessions, elle ne répare rien d’autre.
Sont coupées : toutes les connexions en cours, sur tous les appareils, pour tous les comptes. Les formulaires de l’administration ouverts dans un onglet perdent aussi leur jeton et refusent l’envoi, ce qui n’a d’autre effet que de demander un rechargement.
Ne sont pas touchés : les articles, les pages, les commandes, les réglages, les comptes eux-mêmes et leurs mots de passe. La rotation ne déconnecte pas les visiteurs non connectés, qui n’ont aucun cookie de session. Et elle ne retire évidemment ni un compte administrateur créé par un intrus, ni un fichier déposé sur le serveur, ni une tâche planifiée qui réinstalle le code : ces trois là se traitent séparément.
Relevé du 16 septembre 2026, sur un site vitrine WordPress d’une trentaine de pages, hébergement mutualisé, deux comptes utilisateurs. Le fichier de configuration porte bien les huit clés attendues, chacune de soixante-quatre caractères, et les huit valeurs sont distinctes les unes des autres : aucune n’est restée sur la phrase d’exemple livrée par WordPress, cas encore fréquent sur les sites installés à la main. Le fichier date du 14 août 2026. La lecture de la base montre une seule session enregistrée, ouverte le 25 août 2026 à 13h44 depuis un poste Windows, avec une date d’expiration au 27 août. Elle est donc périmée depuis trois semaines et elle est pourtant toujours inscrite en base, parce que WordPress ne fait le ménage dans ces jetons qu’à la connexion suivante du compte concerné. Sur ce site, une rotation des clés aujourd’hui ne coûterait donc rien à personne : elle effacerait un jeton mort. Le constat vaut surtout pour ce qu’il montre en creux, à savoir qu’une session ouverte sur un poste que l’on ne contrôle plus reste valable tant que personne ne change les clés, et qu’elle ne se voit ni dans la liste des comptes ni dans les fichiers.
Questions fréquentes
Changer les clés supprime-t-il des données ?
Non. Aucune donnée n’est chiffrée avec ces clés : elles servent à signer des cookies, pas à protéger le contenu. Articles, pages, médias, commandes et réglages sont intacts après la rotation. La seule conséquence visible est que chaque personne connectée doit se reconnecter, y compris depuis le téléphone ou l’application mobile.
Faut-il aussi changer le préfixe des tables ou le mot de passe de la base ?
Ce sont trois sujets différents et la confusion est fréquente parce qu’ils vivent dans le même fichier. Le mot de passe de la base se change après une intrusion, oui, et il se change auprès de l’hébergeur avant d’être reporté dans wp-config.php. Le préfixe des tables n’est pas un mécanisme de sécurité : le renommer complique la vie d’un script automatisé, sans plus, et l’opération casse un site plus souvent qu’elle ne le protège.
À quelle fréquence faut-il les faire tourner ?
Il n’existe pas de fréquence recommandée par WordPress, et c’est cohérent : contrairement à un mot de passe, une clé de signature n’est jamais tapée, jamais transmise et jamais réutilisée ailleurs. Elle se change sur événement, pas sur calendrier. Le vrai réflexe à prendre est de l’inscrire dans la procédure de sortie de piratage et dans celle de fin de mission d’un prestataire, deux moments où l’on pense aux mots de passe et où l’on oublie les sessions.
Sources
Et sur votre site ?
Une définition ne dit pas si vous êtes concerné.
L'audit gratuit répond dans votre cas : état technique, temps de chargement, et ce que Google voit réellement de vos pages. Un constat écrit, sans engagement et sans jargon.