Bien comprendre les roles et les permissions dans WordPress

25/09/2026

Écrit par Johanny

WordPress

🟢 Debutant 🟢

1 vues

Borne avec logo PHP et formateur illustrant les bonnes pratiques pour gérer des uploads de fichiers sécurisés en PHP.
Sommaire

Pour gérer les accès de manière granulaire, le CMS intègre un système natif très puissant. Dans ce tutoriel, nous allons explorer en détail les rôles et permissions WordPress. Vous apprendrez à faire la différence entre ces deux concepts fondamentaux, à maîtriser les profils créés par défaut, et à attribuer les bons accès aux bonnes personnes sans mettre en péril la sécurité de votre site web.

Rôles et permissions WordPress : quelle différence et comment les gérer ?

Dans WordPress, les rôles et les permissions déterminent précisément ce qu’un utilisateur peut faire sur un site. Pourtant, ces deux notions sont souvent confondues.

Comprendre leur différence est indispensable dès qu’un site est administré par plusieurs personnes : rédacteurs, développeurs, clients, modérateurs ou administrateurs.

La bonne gestion des permissions permet également de limiter les risques de sécurité en appliquant un principe simple : chaque utilisateur doit disposer uniquement des droits nécessaires à sa mission.

Rôle et permission : quelle différence ?

Avant d’aller plus loin, il faut distinguer deux notions fondamentales de WordPress.

La permission : une action précise

Une permission, appelée capability dans WordPress, correspond à une action qu’un utilisateur est autorisé à effectuer.

Par exemple :

  • edit_posts : modifier des articles ;
  • publish_posts : publier des articles ;
  • delete_posts : supprimer des articles ;
  • upload_files : envoyer des fichiers dans la médiathèque ;
  • manage_options : modifier certains réglages administratifs du site.

Une capability répond donc à une question simple :

« Que cet utilisateur a-t-il le droit de faire ? »

Le rôle : un ensemble de permissions

Un rôle (role) regroupe plusieurs capabilities.

Au lieu d’attribuer individuellement des dizaines de permissions à chaque utilisateur, WordPress associe un ensemble cohérent de capabilities à un rôle.

On peut utiliser une analogie simple :

Une permission est une clé permettant d’ouvrir une porte précise. Un rôle est un trousseau contenant plusieurs clés.

Un utilisateur peut ensuite être associé à un rôle, et donc hériter des permissions correspondant à ce rôle.

Les 5 rôles par défaut de WordPress

Une installation WordPress classique propose cinq rôles principaux :

  1. Administrateur
  2. Éditeur
  3. Auteur
  4. Contributeur
  5. Abonné

Leurs droits sont progressivement plus limités.

1. Administrateur : gérer l’ensemble du site

L’administrateur possède le niveau de privilège le plus élevé sur une installation WordPress classique.

Il peut notamment :

  • créer, modifier et supprimer du contenu ;
  • gérer les utilisateurs ;
  • installer et supprimer des extensions ;
  • gérer les thèmes ;
  • modifier de nombreux réglages du site ;
  • gérer les menus et autres éléments de configuration selon l’installation.

Sur un multisite WordPress, le rôle le plus puissant est toutefois le Super Administrateur, qui dispose de capacités supplémentaires à l’échelle du réseau.

Attention aux comptes administrateurs

Un compte administrateur doit être réservé aux personnes qui ont réellement besoin d’administrer le site.

Donner ce niveau d’accès à un simple rédacteur augmente inutilement les conséquences possibles d’une compromission du compte ou d’une erreur de manipulation.

2. Éditeur : gérer le contenu éditorial

L’éditeur dispose de nombreuses permissions liées à la gestion du contenu.

Il peut notamment :

  • créer et publier des articles ;
  • modifier et supprimer ses propres articles ;
  • modifier et supprimer les articles d’autres auteurs ;
  • gérer les pages ;
  • gérer les catégories et les étiquettes ;
  • modérer les commentaires.

L’éditeur est donc particulièrement adapté à un responsable éditorial, un rédacteur en chef ou une personne chargée de superviser les publications.

Il ne possède normalement pas les capacités d’administration générale d’un administrateur, comme l’installation d’extensions ou la modification des réglages globaux.

3. Auteur : publier ses propres articles

L’auteur dispose de permissions principalement centrées sur ses propres articles.

Il peut notamment :

  • créer ses articles ;
  • modifier ses propres articles ;
  • publier ses propres articles ;
  • supprimer ses propres articles ;
  • envoyer des fichiers dans la médiathèque.

En revanche, il ne peut normalement pas modifier les articles appartenant aux autres auteurs.

Ce rôle convient donc à un rédacteur autonome qui doit pouvoir publier directement ses propres contenus.

4. Contributeur : rédiger sans publier

Le contributeur possède des droits plus limités.

Il peut :

  • créer ses propres articles ;
  • modifier ses propres brouillons ;
  • soumettre son contenu à la validation.

En revanche, il ne possède normalement pas la capacité de publier directement ses articles.

Il est donc adapté à un fonctionnement dans lequel un éditeur ou un administrateur doit relire et publier les contenus.

Une limitation importante

Par défaut, le contributeur ne possède pas la capability upload_files.

Il ne peut donc pas simplement envoyer une nouvelle image dans la médiathèque depuis l’éditeur comme peut le faire un auteur.

C’est un point à prendre en compte lorsque vous créez un workflow éditorial.

5. Abonné : accéder à son profil

L’abonné possède le niveau de permission le plus faible parmi les cinq rôles standards.

Il peut principalement :

  • se connecter au site ;
  • modifier certaines informations de son propre profil ;
  • modifier son mot de passe.

Il ne peut pas créer ou publier du contenu.

Ce rôle peut être utilisé sur les sites qui proposent un espace membre ou certaines fonctionnalités réservées aux utilisateurs authentifiés.

Tableau récapitulatif des rôles WordPress

RôleArticlesPagesPublicationMédiasGestion des utilisateurs
AdministrateurTousTousOuiOuiOui
ÉditeurTousTousOuiOuiNon
AuteurSes articlesNonSes articlesOuiNon
ContributeurSes brouillonsNonNonNon par défautNon
AbonnéNonNonNonNonNon

Ce tableau constitue une vue simplifiée. Les permissions réelles sont déterminées par les capabilities associées au rôle et peuvent être modifiées par le code, un plugin ou le thème.

Comment modifier le rôle d’un utilisateur ?

La modification d’un rôle ne nécessite pas de modifier le code de WordPress.

Depuis l’administration :

  1. Connectez-vous avec un compte disposant des permissions nécessaires.
  2. Ouvrez Utilisateurs > Tous les utilisateurs.
  3. Sélectionnez l’utilisateur concerné.
  4. Modifiez le champ Rôle.
  5. Sélectionnez le nouveau rôle.
  6. Enregistrez les modifications.

Le changement est généralement pris en compte immédiatement.

Une précision importante

Les intitulés des menus peuvent varier selon la langue de WordPress, les extensions installées et les personnalisations de l’administration.

Peut-on créer son propre rôle WordPress ?

Oui.

C’est l’un des avantages du système de rôles de WordPress.

Supposons par exemple que vous souhaitiez créer un rôle Rédacteur Noucode capable de :

  • créer des articles ;
  • modifier ses articles ;
  • envoyer des images ;
  • mais pas publier directement.

Il est possible de créer un rôle personnalisé avec PHP.

La fonction add_role() permet notamment d’enregistrer un nouveau rôle et de lui attribuer les capabilities souhaitées.

Exemple simplifié :

add_role(
    'ncode_redacteur',
    'Rédacteur Noucode',
    [
        'read'         => true,
        'edit_posts'   => true,
        'delete_posts' => true,
        'upload_files' => true,
    ]
);

Cette approche devient particulièrement intéressante lorsqu’un site possède un workflow éditorial spécifique.

Attention : le choix des capabilities doit être réfléchi. Une permission mal attribuée peut donner accès à des fonctionnalités sensibles.

Modifier un rôle avec une extension

Si vous ne souhaitez pas écrire de PHP, une extension de gestion des rôles peut simplifier la configuration.

Des extensions comme User Role Editor permettent d’afficher les capabilities disponibles et de les attribuer graphiquement à un rôle.

Le principe est généralement le suivant :

  1. Installer l’extension.
  2. Sélectionner le rôle à modifier.
  3. Examiner les capabilities disponibles.
  4. Activer ou désactiver celles qui sont nécessaires.
  5. Enregistrer les modifications.
  6. Tester le compte avec un utilisateur dédié.

Pourquoi tester avec un compte séparé ?

Une erreur de permission peut être difficile à repérer depuis un compte administrateur, puisque l’administrateur dispose de beaucoup plus de droits.

Créer un compte de test permet de vérifier concrètement :

  • les menus visibles ;
  • les actions disponibles ;
  • les contenus accessibles ;
  • les possibilités de publication ;
  • les restrictions appliquées.

Les capabilities : la vraie mécanique de WordPress

Pour comprendre réellement le système de permissions de WordPress, il faut regarder les capabilities plutôt que simplement les rôles.

Par exemple, cette vérification :

if ( current_user_can( 'publish_posts' ) ) {
    // L'utilisateur peut publier des articles.
}

ne vérifie pas directement si l’utilisateur est un Auteur ou un Éditeur.

WordPress vérifie si l’utilisateur possède la capability :

publish_posts

C’est une distinction importante.

Un rôle peut changer, tandis que le code peut continuer à demander :

current_user_can()

pour vérifier une permission précise.

Cette approche est préférable à une vérification comme :

if ( $user->roles[0] === 'administrator' )

car elle permet de travailler avec des rôles personnalisés.

Le principe de moindre privilège

La gestion des rôles doit toujours suivre une règle essentielle :

Un utilisateur ne devrait disposer que des permissions nécessaires à son travail.

Par exemple :

Rédacteur

Créer des articles       ✓
Modifier ses articles   ✓
Publier                  selon workflow
Installer des plugins    ✗
Modifier le thème        ✗
Gérer les utilisateurs   ✗

Développeur

Administrer le site      selon besoin
Modifier le code         selon accès serveur
Installer des plugins    selon besoin
Gérer les utilisateurs   selon besoin

Il n’est donc pas nécessaire de transformer tous les membres d’une équipe en administrateurs.

Bonnes pratiques de sécurité

Quelques règles simples permettent de limiter les risques.

1. Limiter les administrateurs

Le rôle administrateur doit rester réservé aux personnes qui en ont réellement besoin.

2. Éviter les permissions excessives

Si un utilisateur doit uniquement rédiger des articles, il n’a aucune raison de pouvoir modifier les réglages du site.

3. Utiliser current_user_can()

Dans le développement WordPress, vérifiez les capabilities plutôt que de tester directement le nom d’un rôle.

if ( current_user_can( 'edit_posts' ) ) {
    // Autoriser l'action.
}

4. Tester les rôles personnalisés

Après toute modification importante, utilisez un compte de test pour vérifier les permissions réellement accordées.

5. Être particulièrement prudent avec les capabilities sensibles

Certaines permissions donnent accès à des fonctionnalités critiques du site. Par exemple :

manage_options

permet l’accès à de nombreux réglages administratifs.

Il ne faut donc pas attribuer arbitrairement ce type de capability à un rôle éditorial.

À retenir

Dans WordPress, le rôle et la permission ne sont pas la même chose.

Le rôle est un ensemble de capabilities :

Rôle
  │
  ├── capability A
  ├── capability B
  ├── capability C
  └── capability D

La capability représente quant à elle une action précise :

edit_posts
publish_posts
upload_files
delete_posts

Cette distinction devient particulièrement importante dès que vous développez un site WordPress sur mesure, une extension ou un workflow éditorial automatisé.

En comprenant les capabilities, vous pouvez créer des rôles adaptés à votre organisation sans accorder inutilement des privilèges d’administration.

Cet article t'a plu ?

Ajoute le premier commentaire
0 Commentaires
Le plus récent
Le plus ancien Le plus populaire

Resultats de la recherche