Accéder au contenu principal

Gestion des utilisateurs

Le système ACL de Joomla! peut paraître complexe. Dans ce chapitre, nous n'allons pas faire de théorie, ou seulement un peu, mais de la pratique avec un exemple concret.
Si vous souhaitez bien comprendre le système ACL de Joomla!, vous pouvez lire la traduction de la documentation de Joomla! sur les ACL. Cela peut paraître long, mais c'est très intéressant ;) !!

Dans ce chapitre, nous allons voir comment créer un site Joomla! comportant plusieurs groupes d'utilisateurs qui ne pourront avoir accès qu'à certains contenus et ne pourront effectuer que certaines taches.
Pour cela nous allons prendre l'exemple du site web d'un lycée, comportant les utilisateurs suivants :

  • Un Directeur qui peut avoir accès à tout le site (Frontend/Backend) et qui peut y effectuer toutes les tâches qu'il souhaite.
  • Des Professeurs répartis en deux groupes :
    • Les Professeurs de Terminal S (Scientifique) qui peuvent se connecter en Frontend pour accéder à tout le contenu et en Backend pour créer le contenu Scientifique. En Backend, ces professeurs peuvent accéder à la catégorie d'article Scientifique (et seulement à celle-ci) et y créer des articles, les publier et les supprimer.
    • Les Professeurs de Terminal L (Littéraire) qui peuvent se connecter en Frontend pour accéder à tout le contenu et en Backend pour créer le contenu Littéraire. En Backend, ces professeurs peuvent accéder à la catégorie d'article Littéraire (et seulement à celle-ci) et y créer des articles, les publier et les supprimer.
  • Des Elèves répartis en deux groupes :
    • Les élèves de Terminal S (Scientifique) qui peuvent se connecter en Frontend pour accéder au contenu Scientifique et seulement à celui-ci. Ces élèves peuvent également proposer des articles Scientifiques que les professeurs Scientifiques devront valider, puis publier.
    • Les élèves de Terminal L (Littéraire) qui peuvent se connecter en Frontend pour accéder au contenu Littéraire et seulement à celui-ci. Ces élèves peuvent également proposer des articles Littéraires que les professeurs Littéraires devront valider, puis publier.
  • Des visiteurs qui ont accès à la page d'accueil du site.

Les groupes d'utilisateurs

Pour commencer, nous allons créer les groupes d'utilisateurs nécessaires à notre site. Lors de l'installation, Joomla! crée plusieurs groupes. Certains sont parfaitement adaptés à ce que nous souhaitons faire, pour les autres, nous devrons les créer.
Le directeur : Le groupe d'utilisateurs auquel va appartenir le directeur est déjà prédéfini, c'est le groupe Super Utilisateur. Avec ce groupe, le directeur aura accès à tout le site et pourra y faire ce qu'il veut.
Les professeurs : Il n'existe pas de groupe correspondant à ce que nous souhaitons. Nous allons donc devoir créer ces groupes. Dans la prévision que nous ayons un jour besoin d'un troisième groupe professeurs (Professeurs Technologique par exemple) nous allons créer un groupe Professeurs, puis deux groupes enfants de ce groupe professeur : Professeur Scientifique et Professeur Littéraire.
Pour cela, rendez-vous dans Utilisateurs → Groupe puis cliquez sur le bouton Nouveau.
Renseignez :
Titre de groupe : Professeurs
Groupe parent : Enregistré (afin que ce groupe hérite du groupe enregistré et puisse se connecter au Frontend du site).
Cliquez ensuite sur le bouton Enregistrer & fermer.
Cliquez de nouveau sur le bouton Nouveau pour créer le groupe Professeurs Scientifiques :
Renseignez :
Titre de groupe : Professeurs Scientifiques
Groupe parent : Professeurs (afin que ce groupe hérite des droits du groupe Professeurs).

Cliquez de nouveau sur le bouton Nouveau pour créer le groupe Professeurs Littéraires :
Renseignez :
Titre de groupe : Professeurs Littéraires
Groupe parent : Professeurs (afin que ce groupe hérite des droits du groupe Professeurs).

Les Elèves : Il n'existe pas de groupe correspondant à ce que nous souhaitons. Nous allons donc devoir créer ces groupes. Dans la prévision que nous ayons un jour besoin d'un troisième groupe élèves (Elèves Technologiques par exemple) nous allons créer un groupe Elèves, puis deux groupes enfants de ce groupes elèves : Elèves Scientifique et Elèves Littéraires.
Pour cela, rendez-vous dans Utilisateurs → Groupe puis cliquez sur le bouton Nouveau.
Renseignez :
Titre de groupe : Elèves
Groupe parent : Enregistré (afin que ce groupe hérite du groupe enregistré et puisse se connecter au Frontend du site).
Cliquez ensuite sur le bouton Enregistrer & fermer.
Cliquez de nouveau sur le bouton Nouveau pour créer le groupe Elèves Scientifiques :
Renseignez :
Titre de groupe : Elèves Scientifiques
Groupe parent : Elèves (afin que ce groupe hérite des droits du groupe Elèves).
Cliquez de nouveau sur le bouton Nouveau pour créer le groupe Elèves Littéraires :
Renseignez :
Titre de groupe : Elèves Littéraires
Groupe parent : Elèves (afin que ce groupe hérite des droits du groupe Elèves).

Les visiteurs : Le groupe d'utilisateurs auquel apartiennent les visiteurs existe déjà, c'est le groupe Public.

Nous venons donc de créer tous nos groupes d'utilisateurs. Si tout s'est bien déroulé, en vous rendant dans utilisateurs → Groupes vous obtenez cette capture d'écran :

Groupes d'utilisateurs


Niveaux d'accès

Tous nos groupes sont créés. Nous allons désormais créer les niveaux d'accès pour que nos utilisateurs puissent accéder à certains contenus, et pas à d'autres.
Ces groupes d'accès vont nous servir à paramétrer "qui va avoir accès à quel contenu". Nous allons créer deux nouveaux niveaux d'accès : Scientifique et Littéraire.
Rendez-vous donc dans Utilisateurs → Niveau d'accès et cliquez sur le bouton Nouveau.
Pour le niveau d'accès Scientifique :
Titre du niveau d'accès : Scientifique
Groupes utilisateurs avec niveau d'accès : cochez :
  • Le groupe Super Utilisateur : pour que le directeur ait accès au contenu de ce niveau.
  • Le groupe Professeur Scientifique, pour que les Professeurs de ce groupe aient accès au contenu de ce niveau.
  • Le groupe Professeur Littéraire, si vous souhaitez que les Professeurs de ce groupe puissent avoir accès au contenu de ce niveau sans pour autant pouvoir le modifier.
  • Le groupe Elève Scientifique pour que les Elèves de ce groupe puissent avoir accès au contenu de ce niveau.

Pour le niveau d'accès Littéraire :
Titre du niveau d'accès : Littéraire.
Groupes utilisateurs avec niveau d'accès : cochez :
  • Le groupe Super Utilisateur : pour que le directeur ait accès au contenu de ce niveau.
  • Le groupe Professeur Littéraire, pour que les Professeurs de ce groupe aient accès au contenu de ce niveau.
  • Le groupe Professeur Scientifique, si vous souhaitez que les Professeurs de ce groupe puissent consulter le contenu de ce niveau sans pour autant pouvoir le modifier.
  • Le groupe Elève Littéraire pour que les Elèves de ce groupe puissent consulter le contenu de ce niveau.

Ensuite, retournez dans Utilisateurs → Niveaux d'accès et éditez le niveau d'accès Spécial. Ce niveau d'accès permet d'accèder aux éléments de l'administration. Pour que les professeurs puissent accéder au gestionnaire d'articles, vous devez donc cocher le groupe Professeurs. Les groupes Professeurs Littéraires et Professeurs Scientifiques étant des groupes enfant de Professeur, ils auront également l'accès à ce niveau Spécial.

Droits

Tous nos niveaux d'accès sont désormais réglés, nous allons désormais nous occuper des Droits. Dans Joomla!, les droits regroupent les actions que les utilisateurs sont autorisés à faire ou non.

Droits généraux

Nous allons commencer par régler les droits sur l'ensemble du site. Pour cela, rendez-vous dans Système → Configuration → Droits. Ici, le seul groupe qui nous intéresse est le groupe Professeurs. Cliquez donc sur son onglet, et réglez l'action Connexion à l'administration sur Autorisé.
Cliquez ensuite sur le bouton Enregistrer & Fermer.

Droits dans le gestionnaire d'articles

Pour que les professeurs puissent créer leurs articles dans leurs catégories respectives, nous allons commencer par créer ces deux catégories. Pour cela, rendez-vous dans Contenu → Gestion des catégories et cliquez sur le bouton Nouveau.



Nouvelle Catégorie
Pour la catégorie Scientifique :
1 - Nom : Catégorie Scientifique
2 - Accès : Scientifique
3 - Droit sur la catégorie :
  • Onglet Elèves Scientifiques :
    • Créer  →  Autorisé
    • Supprimer  →  Hérité
    • Modifier  →  Hérité
    • Modifier le statut  →  Hérité
    • Modifier ses éléments  →  Si vous souhaitez que les élèves puissent modifier leurs articles une fois qu'il ont été publiés par les professeurs, choisissez Autorisé, sinon choisissez Hérité.
  • Onglet Professeurs Scientifiques :
    • Créer  →  Autorisé
    • Supprimer  →  Autorisé
    • Modifier  →  Autorisé
    • Modifier le statut  →  Autorisé
    • Modifier ses éléments  →  Autorisé
Cliquez sur le bouton Enregistrer & Nouveau puis pour la catégorie Littéraire :
1 - Nom : Catégorie Littéraire
2 - Accès : Littéraire
3 - Droit sur la catégorie :
  • Onglet Elèves Littéraires :
    • Créer  →  Autorisé
    • Supprimer  →  Hérité
    • Modifier  →  Hérité
    • Modifier le statut  →  Hérité
    • Modifier ses éléments  →  Si vous souhaitez que les élèves puissent modifier leurs articles une fois qu'il ont été publiés par les professeurs, choisissez Autorisé, sinon choisissez Hérité.
  • Onglet Professeurs Littéraires :
    • Créer  →  Autorisé
    • Supprimer  →  Autorisé
    • Modifier  →  Autorisé
    • Modifier le statut  →  Autorisé
    • Modifier ses éléments  →  Autorisé
Cliquez ensuite sur le bouton Enregistrer & Fermer.
Nos catégories sont créées et réglées. Il nous reste une dernière chose à faire : donner l'accès au gestionnaire de catégorie aux Professeurs. Pour cela, rendez-vous dans Contenu → gestion des articles (ou gestion des catégories car les paramètres sont les mêmes) puis cliquez sur le bouton paramètres situé dans la barre d'outils en haut à droite. Cliquez ensuite sur le dernier onglet : "Droits".
Dans cet onglet, cliquez sur le groupe Professeurs et réglez le droit Accès à la configuration sur Autorisé.
Cliquez ensuite sur le bouton Enregistrer & Fermer.

Côté Frontend
L'ensemble de nos droits et Accès sont désormais paramétrés. Maintenant, nous allons créer des modules et menus pour que nos utilisateurs puissent accéder et créer du contenu au niveau du Frontend.
Un module de connexion
La première chose à créer est un module de connexion. Rendez-vous donc dans le gestionnaire de modules, et s'il n'est pas déjà créé, créez un module de connexion et publiez-le avec le niveau d'accès Public.

Un menu principal
Pour que les utilisateurs puissent accéder au site, vous devez créer un menu principal qui comporte, au minimum, l'élément de menu par défaut du site réglé sur le niveau d'accès Public. De cette façon, tous les utilisateurs peuvent accéder à la page d'accueil du site. Les visiteurs peuvent consulter le contenu publique et le directeur, les Professeurs et les Elèves peuvent se connecter.

Un menu privé
Pour que les personnes qui se connectent puissent accéder au contenu privé vous allez créer un menu comportant les éléments de menu suivants :
  • Articles Scientifiques : 
    • Type : Blog d'une catégorie → Catégorie Scientifique.
    • Niveau d'accès : Scientifique.

  • Articles Littéraires : 
    • Type : Blog d'une catégorie → Catégorie Littéraire.
    • Niveau d'accès : Littéraire.

  • Proposer un article :
    • Type : Créer un article.
    • Niveau d'accès : Enregistré
Créez ensuite un module pour afficher ce menu privé et réglez son niveau d'accès sur Enregistré.

Et voilà !
Vous n'avez maintenant plus qu'à créer vos articles dans les bonnes catégories et créer vos utilisateurs en les attribuant aux bons groupes.
Notes : Lorsque vous créerez les comptes utilisateurs de vos professeurs, vous devrez activer le paramètre Notification Système afin qu'ils reçoivent un mail lorsqu'un élève proposera un article.

Commentaires

Posts les plus consultés de ce blog

cPanel DDOS attack - Mitigate Slowloris Attacks - mod_qos

Apache mod_evasive Mod_evasive is a module available for the Apache HTTP server that can automatically block attacks by rate-limiting any IP that sends too many requests in a short time. Start by installing the module from WHM’s  EasyApache 4  interface. Select the  Currently Installed Packages  profile, search for  mod_evasive  in the  Apache Modules  section, and then install it. The default settings are good for most servers, but you can tweak them further by editing the configuration file  /etc/apache2/conf.d/300-mod_evasive.conf . You can also whitelist specific IP addresses or classes, so legitimate requests are not blocked. Configure CSF to block attacks While  mod_evasive  works very well, it only protects the Apache webserver. In order to harden other services as well, you can install the free  ConfigServer Security & Firewall  (CSF), which also includes a WHM plugin. As the  root  user, install CSF with these terminal commands: cd /usr/src rm -fv csf.tgz wget https://down

Spool file is locked (another process is handling this message)

LOG: MAIN cwd=/usr/local/cpanel/whostmgr/docroot 4 args: /usr/sbin/exim -v -Mrm 1dUoey-0006YJ-3A Message 1dUoey-0006YJ-3A is locked LOG: skip_delivery MAIN Spool file is locked (another process is handling this message) To do this you can run the following commands. |exim -Mt 1dUoey-0006YJ-3A |exim -Mrm 1dUoey-0006YJ-3A I am also providing the following page in case you want more information regarding the exim command options. http://www.exim.org/exim-html-current/doc/html/spec_html/ch-the_exim_command_line.html

Open Media Vault NAS change password

Known Root Password Login to the OMV using the root user and the current password via SSH or Console enter the following command passwd root The new password is now active. Unknown Root Password, but Admin Access to OMV GUI is Available In this scenario we still can help ourselves with the GUI. The method we use is, that we create a cron job for the root user which then resets the password. Navigate to System -> Cron Jobs Press the +Add button UN-tick the enabled box, so that the cronjob does not run automatically. put into the command field the following line, replace newpasswd with your password: echo "root:newpasswd" | chpasswd press okay select the newly created cron job Click the run button. in the opening window click the start button. It will shortly deactivate and activate again. open ssh or console and login as root with your new password. Root and Admin Password Unknown If you do not know the root password, you need to boot with a Li