La sécurité WordPress ne se joue pas seulement sur les correctifs et les plugins. Elle se joue sur ce que votre instance autorise, pour qui, et depuis quel endroit. Quand on parle de rôles, de droits et de comptes utilisateurs, on parle en réalité de “qui peut faire quoi”, avec quelles limites, et avec quel niveau de confiance. Le plus grand risque est souvent banal: une liste d’utilisateurs qui a grossi avec le temps, des rôles trop permissifs, et quelques comptes oubliés qui continuent de vivre, même après un changement d’équipe ou de prestataire.
Un bon audit et sécurisation WordPress commence donc par l’identité et les autorisations. Pas par l’outil miracle, pas par le scan “au hasard”, mais par une photographie réaliste de votre modèle d’accès.
Le problème numéro un: la dérive des privilèges
Dans la plupart des sites que j’ai eu à auditer, la configuration n’est pas catastrophique au départ. Elle devient fragile par accumulation.
Un exemple typique: un rédacteur a eu besoin de publier, on lui a donné un rôle “Auteur” ou “Editeur”, puis il a commencé à gérer des images, des pages, des ajustements de contenu. Quand il a quitté le projet, on a supprimé son compte, ou pas. Parfois on l’a conservé “au cas où”, ou son adresse a changé. Pendant ce temps, un compte admin a été utilisé pour tout, parce que c’est plus simple, puis on l’a gardé tel quel.
Même si WordPress impose des conventions de rôles, ces conventions ne garantissent pas une discipline. WordPress sait faire la différence entre un lecteur, un auteur et un administrateur, mais il ne sait pas si votre organisation est en contrôle. C’est là qu’un audit devient essentiel.
Cartographier les rôles, avant de modifier quoi que ce soit
La première étape consiste à comprendre ce que vous avez réellement. Pas seulement “il y a X utilisateurs”, mais aussi: comment ils sont répartis par rôle, et depuis quand ils existent.
Un audit utile se fait souvent en deux temps. D’abord, vous récupérez une liste des comptes, leurs rôles, et une indication de dernière activité si votre environnement le permet (selon les versions et les réglages, l’admin peut voir des éléments, mais pas tout n’est visible nativement). Ensuite, vous comparez cette liste avec la structure réelle du travail: qui publie, qui modère, qui conçoit, qui administre.
Le point délicat, c’est que WordPress peut vous donner des indices, mais pas une vérité totale. Les rôles reflètent ce que WordPress pense. Les habitudes reflètent ce que les gens font. Un compte “Editeur” qui a toutes les habitudes d’un “admin” n’est pas forcément un problème si le périmètre est maîtrisé, mais c’est une alerte.
Dans un audit sérieux, je cherche trois signaux:
1) des administrateurs en nombre,
2) des rôles de haut niveau attribués à des personnes qui ne devraient gérer que du contenu, 3) des comptes sans activité depuis des mois, mais qui restent avec des droits élevés.Pourquoi les administrateurs sont le point le plus sensible
Le rôle “Administrateur” donne, en pratique, accès à une surface très large. Même si un administrateur ne devrait “pas toucher” au thème ou aux plugins, le système lui permet de le faire. Et sur un site WordPress, un changement apparemment bénin (un plugin ajouté, une mise à jour, un réglage de thème, une modification dans un fichier) peut ouvrir une voie à des compromis.
Je recommande presque systématiquement de viser un petit nombre d’administrateurs, et de verrouiller le reste avec des rôles plus restrictifs. Cela ne signifie pas “zéro admin”. Cela signifie “le minimum d’administrateurs, et des comptes propres”.
Identifier les comptes à risque: pas seulement les mauvais rôles
La tentation la plus fréquente, c’est de dire: “On supprime les comptes qui ne devraient pas être là.” C’est utile, mais incomplet. Un compte peut avoir le bon rôle et rester dangereux, parce qu’il a été configuré trop largement ailleurs, ou parce qu’il a un historique d’accès particulier.
Voici des catégories de comptes qui méritent une attention accrue, au-delà du rôle WordPress:
- Comptes avec accès à distance: si vous utilisez des outils d’administration externe, des accès via VPN, ou des sessions multiples, vérifiez que les comptes utilisés sont bien ceux que vous contrôlez. Comptes partagés: quand un mot de passe a été “donné à l’équipe”, vous perdez toute traçabilité. Un audit doit les détecter et imposer des comptes individuels. Comptes anciens: un compte créé pour une maintenance ponctuelle, puis “oublié”. Un script d’archivage ou une politique de départ d’un prestataire tardive suffit à en laisser vivre. Comptes qui utilisent une authentification faible: mot de passe réutilisé, pas de gestion d’identifiants, absence de double facteur quand il est déployé.
Le rôle est un critère central, mais pas le seul. La sécurité réelle ressemble plus à un continuum qu’à un interrupteur.
Réduire la surface: le principe du moindre privilège, appliqué à WordPress
“Moindre privilège” sonne bien, mais concrètement, il faut traduire ce principe en actions. L’objectif n’est pas de https://gardewp.fr/securite-wordpress/ casser vos workflows. L’objectif est d’empêcher les actions à fort impact d’être possibles avec trop peu de contrôle.
WordPress n’a pas un moteur de permissions granulaire comme certains systèmes d’entreprise. Vous devez donc vous appuyer sur la structure des rôles, sur la discipline d’utilisation, et parfois sur des briques complémentaires si votre site est complexe.
Un site de contenu simple peut fonctionner avec une séparation nette:

- ceux qui écrivent, ceux qui valident, ceux qui administrent.
Le risque survient quand une personne passe de l’écriture à l’administration “par commodité”. C’est souvent une décision prise un jour, puis reconduite par inertie.
Arbitrage: retirer les droits ou limiter l’impact?
Un point de jugement revient souvent dans les audits: retirer des droits immédiatement peut bloquer une équipe. Si vous avez des réglages personnalisés, des intégrations ou des process de publication qui impliquent des actions variées, le passage d’un rôle à un rôle inférieur peut créer des frictions.
Dans ce cas, je préfère parfois une approche graduelle. On commence par:
- réduire les comptes admin, puis ajuster les rôles, puis vérifier que les tâches quotidiennes passent sans contournement.
Cette méthode limite le risque d’incident opérationnel, tout en améliorant la sécurité.
Ce qu’on oublie souvent: les réglages liés aux utilisateurs
Le contrôle des comptes ne se limite pas aux rôles affichés. Il y a des réglages annexes qui changent la manière dont les comptes naissent, se connectent, et obtiennent du pouvoir.
Par exemple, si votre site permet l’inscription par le public, le rôle attribué aux nouveaux utilisateurs devient un élément critique. Même sans inscription publique, un formulaire d’inscription ou une intégration peut indirectement créer des comptes.
Autre zone à surveiller: les plugins qui ajoutent des rôles ou qui modifient les capacités. Un plugin de sécurité peut aussi altérer des comportements, et parfois, sans que l’équipe sache exactement ce qui a été activé. Lors d’un audit, je documente toujours ce qui a été modifié et pourquoi, car les retours en arrière sont plus difficiles une semaine plus tard.
Vérifier les droits effectifs: WordPress et ce que les plugins ajoutent
Les rôles de base WordPress sont un socle. Mais de nombreux sites ajoutent une couche via des plugins d’adhésion, de formulaire, d’e-commerce, ou de gestion des rôles.
Le problème, c’est que deux utilisateurs “Editeur” peuvent avoir des capacités très différentes selon les extensions activées. Certains plugins créent des rôles supplémentaires, ou ajoutent des autorisations implicites.
Dans un audit, je recommande de ne pas raisonner uniquement “au niveau WordPress”. Il faut raisonner “au niveau des capacités finales”. Concrètement, vous voulez savoir si un utilisateur non admin peut, par exemple, installer un plugin, modifier un thème, changer des options sensibles, ou accéder à des zones d’export et d’import.
Sans tomber dans le piège du tout vérifier à la main, il faut au moins faire un test fonctionnel simple: essayer les actions clés avec des comptes de rôles distincts. C’est plus parlant que n’importe quel tableau.
Plan d’audit pratique des rôles et comptes
Voici une démarche que j’utilise souvent, parce qu’elle force le bon ordre, sans tout casser le jour même.
- Exporter la liste des utilisateurs, relever leurs rôles, et isoler les administrateurs (parce que c’est l’axe le plus critique). Vérifier la dernière activité et repérer les comptes inactifs avec des droits élevés. Contrôler l’existence de comptes partagés ou d’identifiants “de secours” qui servent encore. Réduire progressivement les administrateurs au minimum, puis ajuster les rôles pour que les tâches restent possibles. Mettre en place ou renforcer la double authentification pour les comptes à haut privilège.
Cette liste n’est pas une formule magique, mais elle donne un fil conducteur. L’important est de faire le travail dans cet ordre: observer, classer, réduire, puis ajuster, sinon vous risquez de créer un chaos administratif.
Exemple réel: quand l’audit révèle des “comptes fantômes”
Sur un site éditorial, l’équipe avait changé de prestataire. Le nouveau prestataire avait créé ses comptes, tout en gardant une partie des anciens, “pour réutiliser des connexions”. Le site n’était pas compromis, mais l’audit a mis en évidence quatre comptes admin, dont deux n’avaient pas été utilisés depuis plusieurs mois.
Le détail qui a compté n’était pas le nombre, c’était la dispersion des usages. L’un des comptes admin n’était pas partagé par l’équipe, mais il servait de compte de test lors des mises à jour. En pratique, quelqu’un se connectait parfois avec cet identifiant, sans que l’équipe sache exactement quand ni pourquoi.
Le correctif a été relativement simple une fois les responsabilités clarifiées: suppression ou déclassement des comptes non nécessaires, changement de procédures pour que les mises à jour soient faites depuis un seul compte d’administration, et journalisation renforcée des accès. Le gain de sécurité venait autant de la réduction des droits que de la réduction de l’ambiguïté humaine.
Déclassement des rôles: garder la continuité sans laisser de porte ouverte
Déclasser un compte, ce n’est pas seulement “changer Editeur en Auteur” ou “Administrateur en Editeur”. C’est décider quelle action doit devenir impossible.
Le rôle “Auteur” peut publier des articles mais pas toujours avec le même workflow, selon votre configuration. “Editeur” gère aussi des contenus des autres auteurs. Les différences exactes peuvent être influencées par des plugins et des réglages. Donc l’approche la plus fiable consiste à vérifier les actions attendues, puis à verrouiller.
Une bonne règle interne consiste à classer les actions en trois niveaux:
- actions “production” (rédaction, brouillons, relectures), actions “validation” (publication, modération), actions “administration” (plugins, thèmes, réglages, sécurité).
Votre mapping rôle doit refléter cette logique. Si un administrateur n’est pas impliqué dans l’administration, il ne devrait pas être admin.
Gestion des départs: le trou noir opérationnel
L’audit des comptes est souvent déclenché après un incident ou une migration. Mais les comptes qui posent problème naissent plus souvent pendant les changements d’équipe.
Une pratique très efficace consiste à instaurer une règle de départ simple, même sans outil sophistiqué: toute sortie d’équipe doit déclencher une suppression ou un déclassement de compte dans un délai défini. Dans les organisations, la règle doit être “contrôlée”, pas “souhaitée”.
Sans mécanisme, un audit périodique compense. Avec mécanisme, vous réduisez la charge de correction.
Ce point semble administratif, mais c’est là que la sécurité gagne. Un compte oublié est rarement “dangereux par défaut”. Il devient dangereux par accumulation, par exposition, et par l’absence de maintenance.
Les journaux et signaux: repérer avant d’être obligé de réagir
WordPress peut conserver des traces selon vos configurations et vos plugins. Mais même sans se perdre dans des log complexes, un audit doit regarder des signaux simples, notamment pour les comptes à haut privilège.
Quand je fais ce travail, je cherche:
- des connexions inhabituelles (horaires, pays si vous avez cette donnée, fréquence), des actions “lourdes” (installation plugin, modification thème, modifications d’options), des échecs de connexion répétés sur des comptes sensibles.
Si vous n’avez pas de visibilité, vous compensez par une réduction de privilèges et une discipline stricte sur les mots de passe et les comptes. Les deux axes doivent avancer ensemble.
Double authentification: améliorer la posture, sans gâcher les opérations
Activer la double authentification pour tous les utilisateurs peut être disproportionné, mais pour les comptes admin et les comptes ayant des capacités élevées, c’est généralement un bon investissement.
Le piège classique, c’est l’usage de méthodes trop “fragiles” pour l’équipe, ou une mauvaise gestion des secours (codes perdus, téléphones changés, pas de procédure de récupération). Dans un audit, je vérifie donc que la double authentification est réellement opérable, avec des comptes de secours bien documentés.
Si votre équipe doit gérer plusieurs environnements, pensez aussi au “par quel compte j’administre quelle zone”. La cohérence évite des contournements.
Mettre à jour les mots de passe et assainir les secrets
Une fois que vous avez identifié les comptes inutiles et réduit les rôles, le sujet des mots de passe devient prioritaire, mais pas forcément pour tous, ni en une seule vague.
Sur les comptes supprimés, vous pouvez aussi tirer parti d’un nettoyage, sans surcharger le calendrier. Pour les comptes restants, surtout les administrateurs, une rotation des mots de passe est une étape logique, surtout si vous n’êtes pas certain de la qualité initiale.
Le point à ne pas rater, c’est la gestion des secrets dans le temps. Un mot de passe changé une fois ne garantit rien si ensuite il est recopié dans un endroit non maîtrisé. L’assainissement doit s’accompagner d’une méthode de stockage et de renouvellement.
Deuxième liste autorisée: grille de décision pour les rôles
Parfois, on hésite entre supprimer un compte, le déclassement, ou le conserver en attente. Voici une grille de décision courte, utile dans la vraie vie.
| Situation observée | Action recommandée | |---|---| | Administrateur non utilisé depuis longtemps et pas requis par le process | déclassement ou suppression | | Compte partagé entre plusieurs personnes | suppression du partage, création de comptes individuels | | Compte “tech” de maintenance qui n’a plus de rôle opérationnel | suppression du rôle admin, limitation stricte | | Rôle de contenu (auteur ou éditeur) mais accès admin “par habitude” | décommission progressif des droits admin, tests de fonctionnalités | | Compte actif, mais droits trop larges pour ses tâches | ajustement au plus proche du besoin réel |
Cette grille n’empêche pas le jugement, mais elle évite les décisions émotionnelles.
Edge cases qui font trébucher les audits
Il y a des cas où l’analyse “rôle à rôle” ne suffit pas.
- Un compte unique qui porte à la fois la rédaction et la configuration de plugins. Le réduire peut casser des tâches en chaîne. Un plugin qui exige certains droits “administrateur” pour fonctionner comme prévu. Dans ce cas, on ne supprime pas simplement le droit, on sépare le rôle d’exécution et le rôle de supervision. Un site multi-sites WordPress (réseau). Là, les rôles et capacités changent. Un audit doit distinguer les niveaux, réseau versus site. Un accès via API ou via intégrations. Un compte qui n’est pas connecté souvent peut être sollicité par des automatisations.
Quand ces cas existent, l’audit doit inclure une validation opérationnelle, sinon vous gagnez en sécurité et vous perdez la production.
Mettre l’audit en routine: fréquence et critères
Un audit “one shot” est mieux que rien, mais rarement suffisant. La question devient: à quelle fréquence et sur quels critères.
Je vois deux approches qui fonctionnent bien:
- audit trimestriel léger, surtout pour les comptes sensibles, audit semestriel plus complet, quand l’équipe et les plugins ont évolué.
Les critères déclencheurs peuvent aussi être déclenchés par événements: changement d’équipe, nouvelle intégration majeure, déploiement de thème, incident de sécurité, ou migration.
Le bon rythme n’est pas universel. Il dépend de la stabilité de votre organisation et de votre cycle de publication.
Ce que vous devez documenter pour que l’audit tienne
Les meilleures sécurisations échouent parfois non pas par technique, mais par manque de transmission. Un audit doit produire une trace compréhensible pour la prochaine personne qui reprend le volant.
Documentez au minimum:
- qui sont les administrateurs actuels et pourquoi, quelles règles de rôles sont appliquées pour les rédacteurs et les validateurs, quelles procédures existent pour les départs et les ajouts de comptes, comment la double authentification est maintenue et récupérée.
Sans ça, on “corrige” à nouveau dans six mois, avec les mêmes incertitudes.
Rester pragmatique: sécurité, oui, mais sans immobiliser le site
La tentation, après un audit, est de verrouiller à 100 pour cent. Le risque est de rendre le système ingérable et de pousser les gens à contourner, parfois en recréant des comptes trop permissifs.
La sécurité WordPress la plus durable est celle qui s’intègre au travail. Si votre équipe peut publier, gérer les contenus et faire les mises à jour nécessaires avec des comptes correctement limités, vous réduisez la pression qui mène au “on met admin juste pour que ça marche”.
Au fond, l’audit des rôles, droits et comptes utilisateurs n’est pas un exercice bureaucratique. C’est une manière de redonner de la clarté au système d’accès. Et la clarté, sur WordPress, vaut souvent plus qu’une couche technique supplémentaire.