FAQ des rôles

Révision de 30 avril 2015 à 10:01 par Séverin Terrier (discussion | contributions) (Quelques corrections)

(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

Attention : vous consultez actuellement la documentation dédiée aux versions 2.x de Moodle. La documentation pour les versions 3.x de Moodle est consultable ici : FAQ des rôles.


Quelle est la définition de...

Capacité
La description d'une fonctionnalité configurable d'un programme. Moodle comporte des centaines de capacités. Chaque capacité a un nom interne, par exemple mod/forum:rate et un nom lisible pour les humains, par exemple « Évaluer les messages ».
Permission
Une permission est donnée à chaque capacité et permet ainsi de déterminer si la fonctionnalité peut être utilisée par l'utilisateur concerné. Il y a quatre valeurs possibles pour la permission qui est affectée à une capacité : Autoriser, Empêcher, Interdire et Non défini/Hériter.
Rôle
Un ensemble de permissions associées à chaque capacité. Par exemple, les rôles Enseignant et Étudiantsont des rôles de l'installation standard de Moodle.
Contexte
Une zone fonctionnelle de Moodle. Les contextes font partie d'une hiérarchie. Les cours, les modules d'activité ou les blocs sont des contextes.

Pourquoi les modifications faites sur des rôles sont-elles sans effet ?

Certaines capacités, comme moodle/user:changeownpassword, ne peuvent être attribuées que dans le contexte système. Modifier une telle capacité dans un contexte de cours n'aura donc aucun effet.

Pourquoi certains utilisateurs n'apparaissent pas dans les Participants, alors que je sais qu'ils sont dans mon cours ?

Les utilisateurs dont le rôle a été attribué dans un contexte supérieur, par exemple les utilisateurs ayant le rôle d'enseignant dans une catégorie de cours ne sont techniquement pas inscrits au cours et n'apparaissent donc pas dans la liste des participants affichée en suivant le lien Participants dans le bloc de navigation. Ils sont en revanche affichés dans Administration > Administration du cours > Utilisateurs > Autres utilisateurs.

Avoir un rôle (ou une capacité) n'est donc pas la même chose qu'être inscrit à un cours. Par exemple, un gestionnaire peut tout voir dans tous les cours sans y être cependant inscrit. Ce fonctionnement était différent dans les versions de Moodle antérieure à la version 2.0.

Comment empêcher un utilisateur de modifier son mot de passe ?

Pour empêcher un utilisateur de modifier son mot de passe, il faut s'assurer que pour lui, la capacité moodle/user:changeownpassword ne soit pas autorisée. Le rôle Utilisateur authentifié, attribué dans le contexte Système, possède cette capacité par défaut. Il y a donc 2 possibilités :

  • modifier le rôle Utilisateur authentifié, en définissant la capacité moodle/user:changeownpassword comme Non défini. Cela aura pour effet que tous les utilisateurs (sauf les administrateurs) ne pourront plus modifier leur mot de passe !
  • créer un nouveau rôle CannotChangeOwnPassword définissant uniquement la capacité moodle/user:changeownpassword sur Empêcher, sans modifier les autres capacités, puis en attribuant ce rôle à l'utilisateur désiré dans le contexte Système, dans Administration > Administration du site > Utilisateurs > Permissions > Attribution des rôles système.

Comment empêcher un utilisateur de modifier son profil ?

Il faut appliquer la même méthode que pour empêcher un utilisateur de modifier son mot de passe, avec la capacité moodle/user:editownprofile en lieu et place de moodle/user:changeownpassword.

Comment changer le nom "Enseignant" dans la description du cours ?

Voici plusieurs solutions :

  • Modifiez le rôle Enseignant via Administration > Utilisateurs > Permissions > Définition des rôles et renommez-le. Ce changement sera valable pour tout le site.
  • Créez un nouveau rôle en dupliquant celui de l'enseignant, et en lui donnant le nom voulu, puis attribuez ce nouveau rôle aux utilisateurs voulus dans le contexte du cours, au lieu du rôle d'enseignant. Depuis Administration > Présentation > Cours > Contacts de cours, cochez les noms des rôles à afficher sur les descriptions des cours.
  • Créez un nouveau rôle factice, ne possédant aucune capacité, qui sera attribué en plus du rôle d'enseignant. Vous pourrez choisir depuis Administration > Présentation > Cours > Contacts de cours quels rôles afficher sur les descriptions des cours.
  • Dans l'administration d'un cours, il est possible de modifier le nom de chaque rôle pour ce cours.
  • Personnalisez les fichiers de langue et modifiez-y les termes que vous voulez.

Comment permettre aux enseignants de désigner d'autres enseignants dans leur cours ?

Il suffit de modifier le rôle Enseignant. Dans Administration > Administration du site > Utilisateurs > Permissions > Définition des rôles, allez dans l'onglet Autoriser l'attribution des rôles et cochez la case à l'intersection de la colonne Enseignant et de la rangée Enseignant.

Pourquoi des participants sont automatiquement ajoutés lors de la création d'un nouveau cours ?

Si un utilisateur possède un rôle système (dans le contexte système/site) ou dans une catégorie de cours, alors cet utilisateur possède également ce rôle dans tous les cours de ce contexte. Donc, les étudiants, enseignants et créateurs de cours définis par exemple dans une catégorie de cours apparaissent dans les participants de tous les cours de cette catégorie.

Vérifiez Administration > Administration du site > Utilisateurs > Permissions > Attribution des rôles système et le lien Attribution des rôles dans la page de chaque catégorie de cours, et enlevez certains utilisateurs si nécessaire.

Pourquoi tous les étudiants sont-ils inscrits à tous les cours ?

Voila deux explications :

  • Le rôle d'étudiant a été attribué aux utilisateurs au contexte site/système plutôt que dans le contexte de cours (voir la FAQ ci-dessous)
  • Le rôle par défaut pour tous les utilisateurs est défini à Étudiant plutôt qu'à Utilisateur authentifié dans Administration > Utilisateurs > Permissions > Règles utilisateurs (à partir de Moodle 1.8).

Après mise à jour, pourquoi les créateurs de cours apparaissent dans tous les cours ?

Le rôle de créateur de cours est attribué au contexte système/site et s'applique donc à tout le site.

Comment éviter que les créateurs de cours apparaissent dans la liste des participants ?

Soit :

  • Dans Administration > Utilisateurs > Permissions > Attribution des rôles système, enlevez les utilisateurs ayant le rôle de Créateur de cours, puis cliquez sur la case Attribution cachée avant d'attribuer à nouveau le rôle aux utilisateurs, de façon cachée.

Ou :

  • Dans Administration > Utilisateurs > Permissions > Définition des rôles, modifiez le rôle Créateur de cours et changez les permissions pour moodle/course:view et moodle/course:update de Autoriser à Non défini.

Une autre possibilité est d'attribuer le rôle de créateur de cours dans le contexte catégorie de cours, via le lien Attribution des rôles en haut à droite sur la page de chaque catégorie de cours.

Comment éviter que les administrateurs apparaissent dans la liste des participants ?

Vérifiez que les administrateurs n'aient pas un autre rôle qui leur soit attribué dans les cours.

Pourquoi les attributions cachées sont elles toujours visibles ?

L'attribution des rôles n'est pas masquée pour les administrateurs ou les enseignants. En fait, pour les utilisateurs ayant la capacité moodle/role:viewhiddenassigns.

Pourquoi une différence entre les utilisateurs listés dans les participants et ceux ayant un rôle attribué dans un cours ?

Les utilisateurs possédant un rôle dans un contexte supérieur, par exemple les utilisateurs possédant le rôle d'enseignant dans une catégorie de cours, peuvent apparaître dans la liste des participants du cours, car ils héritent de leur rôle. La discussion Discrepancies between Assign Roles lists and Participants list (en anglais) fournit une plus longue explication.

D'où sont héritées les permissions ?

Les permissions sont héritées des rôles attribués dans un contexte de niveau supérieur et ayant les permissions définies à Autoriser pour une capacité particulière. Si une permission n'est autorisée dans aucun contexte, alors l'utilisateur n'aura pas de permission pour cette capacité.

Par exemple, le rôle Étudiant a une permission définie à Non défini pour la capacité Modifier la configuration du site. Cette permission n'est autorisée dans aucun contexte, donc les personnes ayant le rôle d'étudiant n'auront jamais la possibilité de modifier la configuration du site.

Qu'est-ce que la hiérarchie des permissions ?

Une hiérarchie détermine quelle permission l'emporte, ou sera effective en cas de conflit apparent. Par exemple, le site permet à tous les étudiants de poster dans les forums, mais un enseignant peut retirer ce droit pour un cours spécifique. La hiérarchie des permissions autorisera un étudiant à poster dans les forums d'un cours, mais pas dans l'autre.

Pourquoi "Prendre le rôle..." semble ne pas fonctionner correctement pour les créateurs de cours ?

Cette fonctionnalité est prévue pour les enseignants définis au niveau du cours. Les utilisateurs ayant un rôle attribué à un contexte supérieur (catégorie de cours) ne doivent pas s'attendre à pouvoir utiliser cette fonctionnalité.

Qu'est-ce qu'un modèle de rôle ?

Un modèle de rôle est un rôle dont la définition est prédéfinie dans Moodle et sert donc de modèle pour créer d'autres rôles. Par exemple, les modèles de rôle sont utilisés lors des mises à jour de Moodle, pour ajouter aux rôles par défaut de nouvelles capacités. Si un rôle n'a pas de modèle de rôle, aucune capacité n'y est ajoutée durant les mises à jour.

Les modèles de rôle sont aussi utilisés lors de la réinitialisation d'un rôle pour définir ses réglages par défaut. Si un rôle n'a pas de modèle de rôle, la réinitialisation retire les permissions de toutes les capacités.

Il n'est pas nécessaire de définir un modèle de rôle pour les rôles personnalisés, et qui sont notamment utilisés pour des dérogations.

Comment les permissions sont-elles calculées par Moodle ?

Voir à ce sujet Calcul des permissions.

On peut voir aussi, en anglais How permissions are calculated? et New permissions evaluation in 2.0 dans la documentation développeur.