Simon
Table des matières
Cette documentation couvre l'utilisation du composant d'Akeeba Subscriptions, ainsi que ses modules et plugins, pour vendre des abonnements sur votre site web Joomla!. Cette documentation est l'adaptation française (non-officielle) de la documentation officielle d'Akeeba Subscriptions. Il est autorisé de copier, distribuer et/ou modifier ce document sous les conditions de GNU Free Documentation License, Version 1.3 ou toute version plus récente publiée par the Free Software Foundation. Vous pourrez trouver une copie de cette licence à cette adresse : http://www.gnu.org/licenses/fdl.html.
1. Introduction et installation
Introduction à Akeeba Subscription
Pré-requis et compatibilité
Installation
Mise à jour d'Akeeba Subscription
Désinstallation
2. Réglage initial et utilisation
Comment fonctionne les abonnements et démarrage rapide
Options de configuration
Niveau d'Abonnement
Règles de taxe
Règles de mise à niveau
Coupons
Gestionnaire d'abonnement
Gestionnaire d'Affiliation
Élément en Front-end
Importation à partir d'autres composants
Personnaliser Akeeba Subscriptions
Personnaliser la disposition du front-end
3. Méthode de payement, intégrations et plug-ins
Méthodes de payement
PayPal
None
WorldPay
Off-line
2Checkout Standard Purchase Routine
ccAvenue
eWay
uPay
MoIP
Google Checkout
Moneris
Skrill
Phoca Gallery version 3.2.1 est disponible
Phoca Gallery version 3.2.1 est sortie. Cette version est compatible avec Joomla 1.7 et Joomla 2.5.
Rediriger les invités vers une page de connexion/enregistrement
Supposons que vous ayez sur votre site certains éléments de menu qui requièrent que l'utilisateur soit connecté pour accéder au contenu, comme par exemple “Proposer un article“. Vous souhaitez que tous les utilisateurs puissent voir l'élément de menu, qu'ils soient connectés ou non, et vous souhaitez que seuls les utilisateurs connectés puissent accéder au contenu.
ACL Joomla! Configuration des ACL en back-end
Ce dernier chapitre est une traduction de l'article Joomla ACL: Configuring back-end ACL écrit par Jen Kramer.
Dans ce chapitre, nous souhaitons donner le droit à un groupe d'utilisateurs, que nous appellerons “client”, d’accéder au backend du site.
Disons que vous souhaitez donner à ce groupe des accès très basiques au backend de Joomla! :
- Possibilité de créer, éditer, publier/dé-publier les articles d'une ou plusieurs catégories (ou même de toutes).
- Possibilité de créer, éditer, publier/dé-publier les éléments de menu.
- Possibilité d'accéder à certains composants basiques comme le composant liens web.
Pour suivre ce tutoriel, je vous conseille d'utiliser 2 navigateurs différents, un avec lequel vous serez connecté en temps que Super Utilisateur, et un autre avec lequel vous serez connecté avec le compte client. En faisant cela, vous n'aurez pas besoin de vous déconnecter/reconnecter à chaque fois.
L'approche générale de configuration sera la suivante :
1. Créer un nouveau groupe d'utilisateurs, lui assigner les autorisations de base, et créer un compte utilisateur pour le client.
2. Assigner le(s) niveau(x) d'accès approprié(s).
3. Assigner les droits pour que le client puisse accéder au gestionnaire d'articles, gestionnaire
de menu, et liens web.
Création d'un nouveau groupe d'utilisateurs, attribution des droits de base, création d'un utilisateur
Création d'un nouveau groupe d'utilisateurs
Pour créer un groupe d'utilisateurs, rendez-vous dans Utilisateurs → Groupes → Nouveau. Vous pouvez par exemple nommer ce groupe “Groupe d'Utilisateurs Client”. Faites en un parent du groupe Public.
Attribution des droits de base à un groupe
Pour attribuer des droits à votre nouveau groupe, rendez-vous dans Site → Configuration → Onglet Droits
Dans l'onglet de votre nouveau groupe, réglez l'accès à l'administration sur “Autorisé”. Laissez les autres paramètres comme cela pour l'instant.
Création d'un nouvel utilisateur
Pour créer un nouvel utilisateur, rendez-vous dans Utilisateurs → Gestion des utilisateurs → Nouveau
Remplissez tous les champs nécessaires, et attribuez votre nouvel utilisateur au Groupe d'Utilisateurs Client que vous venez de créer.
A ce stade, si vous vous connectez à l'administration de votre site (à l'aide de votre deuxième navigateur) sur le compte que vous venez de créer, vous devriez avoir cet écran :
Cela est normal, mais pas très utile. Continuons.
Assignation des niveaux d'accès
Pour l'instant, avec votre compte client, vous pouvez vous connecter à l'administration, accéder au frontend du site et vous déconnecter.
Une chose que nous n'avons pas encore configuré, est un niveau d'accès pour le backend du site. Pour rappel, les niveaux d'accès contrôlent qui voit quoi, incluant modules, contenu, et ainsi de suite. Les menus sont des modules, également dans le backend de Joomla!. Ils sont des modules administrateurs, et ces modules administrateurs sont assignés au niveau d'accès Spécial. Votre utilisateur Client aura également besoin d'avoir le niveau d'accès Spécial assigné à son groupe d'utilisateurs, le Groupe d'Utilisateurs Client.
Retournez donc dans votre administration avec le navigateur Super Utilisateur :
Rendez-vous dans Utilisateurs → Niveaux d'accès → Accès Spécial, puis attribuez le Niveau d’accès Spécial au Groupe d'Utilisateurs Client. Ensuite enregistrez.
Sur votre navigateur Client, déconnectez-vous, puis reconnectez-vous. (Parce que le niveau d'accès change, vous devez vous déconnecter puis vous reconnecter afin de changer l’interface d'administration.)
En temps que client, vous devriez désormais avoir quelque chose ressemblant à cela :
Désormais, avec votre compte client, vous pouvez :
- Vous connecter à l'administration, accéder au frontend du site et vous déconnecter.
- Éditer votre propre profil, modifier votre identifiant et votre mot de passe.
- Voir les liens d'aide, tous ceux qui sont sur les pages accessibles au public.
- Voir une liste des 5 articles les plus populaires, et les 5 derniers articles ajoutés via le module de droite.
Ce n'est toujours pas très utile, mais au moins, ce n'est plus absolument rien ! Notre prochaine étape est de donner au client la permission de créer, éditer, et changer l'état des articles.
Assignation des droits : Articles
Le client doit être capable d’accéder au gestionnaire d'articles du backend de Joomla!. La première étape est de donner au client l'accès à ce gestionnaire d'article comme une option dans le menu. Une fois que cette option est visible, nous pouvons alors nous focaliser sur l'assignation de droits plus spécifiques.
Faire apparaître le Gestionnaire d'Articles dans le backend du client
Pour faire apparaître le Gestionnaire d'Articles comme une option dans le menu, rendez-vous dans Contenu → Gestionnaire d'Articles → Paramètres, choisissez l'onglet droits et réglez “Accéder à l'administration” sur Autorisé pour le Groupe d'Utilisateurs Client. Cliquez sur enregistrer.
Vous pourriez être curieux à propos de l'option de configurer. C'est la permission qui vous autorise à accéder à la boite de dialogue des paramètres. En général, vous souhaiterez que seul le super utilisateur ait accès à ça.
Maintenant, allez sur le navigateur web du client, rafraichissez votre écran, et vous devriez voir le Gestionnaire d'Articles et le Gestionnaire de Catégories apparaître comme icône dans le panneau d'administration ainsi que comme élément de menu.
Malheureusement, il n'est PAS possible de séparer les permissions pour le Gestionnaire d'Articles et le Gestionnaire de Catégories pour le moment. C'est une faiblesse majeure dans les ACL de Joomla!.
Si vous regardez le Gestionnaire d'Articles en tant que client, vous devriez pouvoir voir la liste complète des articles (si vous avez installé les données d'exemples). Cependant, vous ne pouvez pas les éditer, et vous ne pouvez pas non plus modifier leurs états. Il n'y a pas de bouton pour créer un nouvel article (en haut à droite), il y a seulement l’icône d'aide.
Edition de tous les articles vs édition des catégories d'articles
La prochaine étape est de donner la permission au client d'éditer et de changer l'état des articles. Voulez-vous donner au client la possibilité de modifier tous les articles, ou souhaitez-vous seulement lui donner ce droit seulement pour certaines catégories, ou avez-vous besoin de donner cette permission article par article ?
La réponse est toujours ça dépend ! Quand vous configurez la structure de catégories de votre site, je recommande cela :
- Gardez les ACL à l'esprit quand vous paramétrez les catégories de contenu. Si vous devez interdire à votre client l'accès à certaines pages du site, vous devez classer ces pages dans la même catégorie, même si leur contenu est très différent. Cela rendra l'ACL plus simple à configurer.
- Également, si le client a seulement besoin d'éditer certains articles, cela serait plus logique de les classer dans la même catégorie.
- Changer les droits dans un système article-par-article devrait être utilisé que pour les cas les plus rares. Il est difficile d'expliquer au client qu'il doit configurer les droits lors de la création de nouveaux articles. Réglez les droits au niveau de la catégorie, et le client n'aura jamais besoin de les toucher lors de la création de nouveaux articles.
Pour chaque scénario, voici comment vous devez procéder :
Le client doit éditer tous les articles
Si le client doit éditer tous les articles, configurez les droits comme cela :
- Dans Contenu → Gestionnaire d'Articles → Paramètres → Droits, pour le Groupe d'Utilisateurs Client, réglez Créer, Modifier, Modifier le Statut, et Modifier ses éléments sur Autorisé. En général, je ne donne pas la permission au client de supprimer le contenu, ce qui lui donnerait la possibilité de vider la corbeille. Il peut dé-publier ou mettre à la corbeille avec la permission Modifier le Statut.
Le client peut éditer les articles d'une ou plusieurs catégories
Si le client doit seulement éditer les articles d'une ou d'un petit nombre de catégories, configurez chaque catégorie comme cela :
- Vous devez autoriser l'Accès à l'Interface d'Administration dans Contenu → Gestionnaire d'Articles → Paramètres → Permissions.
- Dans Contenu → Gestionnaire de Catégories, cliquez sur le nom de la catégorie d'articles que le client doit pouvoir éditer. En bas du panneau de configuration, pour chaque catégorie, vous retrouvez les droits. Réglez ces droits pour autoriser Créer, Modifier et Modifier ses éléments.
- Répétez ce procédé pour chaque catégorie d'articles dans laquelle le client doit avoir accès.
Le client doit avoir accès à une base article-par-article
Vous pouvez également éditer les articles individuellement en tant que super utilisateur, scroller vers le bas de l'écran et régler les droits client ici. Cela doit être utilisé seulement dans de rares circonstances . Configurer les permissions au niveau des catégories est une meilleure approche en perspective de la maintenance.
J'ai autorisé mon client à créer, modifier, et modifier le statut de tous les articles du site. Le panneau de contrôle, pour le compte client, ressemble à cela :
Assigner les droits : Gestionnaire de médias
En tant que client, si vous éditez un article, une des taches que vous aurez certainement besoin d’accomplir, est la possibilité d'ajouter une image à l'article.
Les droits sont actuellement affectés comme cela : le client peut voir les articles, les éditer en cliquant sur le titre, obtenir le formulaire d'édition de l'article, puis cliquer sur le bouton Image situé sous la fenêtre de texte de l'article. La fenêtre du Gestionnaire de Média :
Notez que le client peut naviguer et sélectionner n'importe quelle image déjà présente dans le Gestionnaire de Médias, mais il n'a pas l'interface permettant de charger une nouvelle image sur le site. Cela vient du fait que le Gestionnaire de Médias est un composant séparé du Gestionnaire d'Articles, et qu'il possède donc son propre réglage de droits. Le Gestionnaire de Médias n'apparait pas dans la structure du menu backend de Joomla! lorsque vous êtes connecté avec le compte client.
Pour changer cela, retournez sur votre navigateur super utilisateur, rendez-vous dans Contenu → Gestionnaire de Médias → Paramètres → Droits, réglez Accès à l'administration et Créer sur Autoriser.
Assigner les Droits : Menu
A partir de maintenant, vous devez avoir une idée de ce qui va suivre. Si le client a besoin de lier un article à un menu, il a besoin d'accéder au Gestionnaire de Menu dans le backend de Joomla!.
En tant que super utilisateur, allez dans Menus → Gestionnaire de Menu → Paramètres → Droits, et pour le Groupe d'Utilisateurs Client, réglez Accès à l'administration, Créer, Modifier et Modifier l'état sur Autorisé.
Malheureusement, vous n'êtes pas en mesure d'autoriser le client à ajouter des éléments de menu enfants à un certain menu parent, ou de l'autoriser à ne créer que certains types d'éléments de menu. Ce serait une bonne addition aux ACL de Joomla!.
Assigner les droits : Composant Liens Web
Voici à quoi ressemble le backend de mon client désormais :
Désormais, je veux donner au client l'accès aux Liens Web mais pas aux autres composants de Joomla!. Heureusement, cela est facile à faire, et vous avez certainement compris comment faire.
En tant que super utilisateur, allez dans Composant → Liens Web → Paramètres → Droits, et pour le groupe d'Utilisateurs Client, réglez Accès à l'administration, Créer, Modifier, Modifier le Statut sur Autorisé.
Vous pouvez répéter ce procédé pour tous les composants Joomla! auxquels le client doit avoir accès.
Notes : certaines extensions tierces n'ont pas entièrement intégré le système ACL de Joomla!.
Si le système ACL est important pour votre site, assurez-vous de choisir des composants qui ont parfaitement intégré ce système.
Utiliser les Droits et les Niveaux d'accès ensemble
Comme nous l'avons déjà vu, il est possible de définir une hiérarchie pour les groupes, dans laquelle chaque groupe enfant hérite de Droits d'action ( par exemple le Droit de créer) de son groupe parent. Les Droits d'action sont également hérités des niveaux d'accès d'appartenance. Par exemple, un droit dans le gestionnaire d'articles est hérité du même Droit dans les Configurations Globales, et un Droit dans une catégorie enfant est hérité du Droit de sa catégorie parent.
Ce double héritage peut être confus, mais il peut également être très utile. Imaginons l'exemple suivant : Nous avons une école avec une hiérarchie de groupe de Professeurs → Professeurs d'Histoire → Assistant Professeur d'Histoire. Nous avons également une hiérarchie d'Assignation →Assignation d'Histoire. Nous souhaitons que les Professeurs d'Histoire et les Assistants Professeurs d'Histoire aient les droits suivants :
- Les deux groupes peuvent créer de nouveaux articles seulement dans la catégorie assignée à l'histoire.
- Seuls les Professeurs d'Histoire (et non les Assistants Professeurs d'Histoire) peuvent publier ou modifier ces articles.
Ce schéma ACL est très simple à implémenter. Le diagramme suivant montre comment les réglages doivent être effectués pour l'action Créer :
Action de création Autorisé pour les Professeurs d'Histoire :
Dans le diagramme, la hiérarchie des Droits est affichée descendante sur la partie gauche alors que la hiérarchie des Groupes est affichée sur la ligne du haut. Les Droits sont hérités en descendant et en allant vers la droite comme l'indiquent les flèches. Pour implémenter les Droits souhaités, nous laissons les Configurations Générales vides (Non défini) pour tous les groupes. De manière similaire, dans le gestionnaire d'articles, et l'assignement de Catégories, nous laissons le Droit Créer sur hérité pour tous les groupes. Comme montré dans le diagramme, cela veut dire que ces groupes n'ont pas le Droit de Créer sur les articles en général ou sur les articles du groupe assigné.
Pour résumer où nous en sommes, nous n'avons donné aucun droit spécial jusqu'à présent. Maintenant, sur l'écran d'attribution de droits de la Catégorie Histoire, nous réglons le Droit Créer sur Autorisé pour le Groupe Professeur d'Histoire. Ce réglage surcharge le Refusé implicite que nous avons ajouté par défaut et donne aux membres de ce groupe le Droit de créer du contenu (articles et articles enfants) pour cette catégorie. Ce réglage ”Autorisé” est également hérité par le groupe Assistant Professeur d'Histoire.
Ensuite, nous devons donner au groupe Professeur d'Histoire le Droit “Modifier l'Etat” tout en refusant ce Droit au groupe Assistant Professeur d'Histoire. Cela se fait comme montré dans le diagramme suivant.
Action d'édition des statuts refusé pour les Assistants Professeurs d'Histoire :
Cette configuration est la même que celle du premier diagramme, à l’exception que cette fois nous réglons le Droit Editer l'état sur l'écran d'attribution de droits de la Catégorie Histoire à Refusé pour le groupe Assistant Professeur d'Histoire. Cela veut dire qu'un membre du groupe Assistant Professeur d'Histoire ne pourra pas Publier ou Dé-publier les articles de cette catégorie.
Notez que cela a été accompli en réglant seulement 2 droits l'attribution des droits de la catégorie Histoire : Autorisé pour le groupe Professeur d'Histoire, Refusé pour le groupe Assistant Professeur d'Histoire.
Créer un groupe d'utilisateur ayant tous les droits en backend seulement dans le gestionnaire d'article
Problème :
Nous souhaitons créer un groupe appelé “Gestionnaire d'articles” avec les droits en backend seulement pour les articles et non pas pour toutes les autres options de menu backend. Les membres de ce groupe seront capables d'utiliser toutes les fonctionnalités du gestionnaire d'articles, incluant les droits sur les paramètres des articles.
Solution :
- 1. Créez un nouveau groupe appelé “Gestionnaire d'articles” et faites en un enfant du groupe Public comme cela :

Parce qu’il est un enfant du groupe Public, il n'a aucun droit par défaut.
- 2. Dans Utilisateurs => Niveau d'Accès, éditez le Niveau d'Accès Spécial et ajoutez le nouveau groupe. De cette manière, les membres du nouveau groupe peuvent accéder aux menus et modules du backend (cela sous-entend que les modules du menu administrateur et les quickicons sont assignés au Niveau d'Accès Spécial, qui est le réglage par défaut).
Par défaut, les éléments de menu ainsi que les modules backend sont réglés sur accès Spécial, donc si vous oubliez d'ajouter le nouveau groupe au Niveau d'Accès Spécial, vous ne verrez aucun module ou élément de menu lorsque vous serez connecté en tant qu'utilisateur de ce groupe.
- 3. Dans Site => Configuration => Droits, cliquez sur le groupe Gestionnaire d'articles et changez les droits afin d'autoriser les actions suivantes : Connexion à l'administration, Créer, Supprimer, Modifier, Modifier le statut et Modifier ses éléments. L'écran suivant affiche les réglages avant l'enregistrement.
Après l'enregistrement, la colonne Droits appliqués devrait ressembler à ceci :
Notez que les droits pour Accès à l'administration sont hérités, ce qui veut dire qu'ils sont Non-autorisés.Ceci est important. Cela signifie que ce groupe sera simplement capable d’accéder aux composants si nous lui donnons les droits Autorisé pour Accès à l'administration de ce composant. Nous avons donc simplement à modifier le composant auquel nous souhaitons donner accès, et non-pas à modifier tous les réglages des composants auxquels nous ne souhaitons pas donner accès. Si nous avons le cas où nous souhaitons donner à un groupe l'accès à tout sauf à un composant, nous pouvons régler Autorisé par défaut et ensuite régler le composant souhaité sur Refusé. Notez également que nous ne donnons pas au groupe le Droit Connexion au site, donc les utilisateurs de ce groupe ne pourront pas se connecter au frontend du site. ( Si nous souhaitons changer cela, nous devons simplement changer le droit Connexion au site à Autorisé).
- 4. Dans le Gestionnaire d'articles → Paramètres → Droits, pour ce groupe, réglez sur Autorisé l'action Accès à l'administration comme montré sur cet écran :

Tous les autres droits désirés sont hérités.
C'est tout ce que nous devons faire. Les membres de ce groupe peuvent se connecter au backend du site et faire ce qu'ils veulent dans le gestionnaire d'articles mais ne peuvent rien faire d'autre dans ce backend. Par exemple, l'écran suivant montre ce qu'un membre du groupe Gestionnaire d'articles verra s'il se connecte au backend :
Créer un Module Menu (et ses éléments de menu) visible seulement aux visiteurs
La version 2.5 de Joomla! introduit la possibilité de créer un niveau d'accès visible seulement par les visiteurs du site (ce qui signifie par les personnes non-connectées). L’exemple suivant vous montre comment réglé cette nouvelle fonctionnalité.
- 1- Créez un nouveau groupe d'utilisateur appelé Invités. Faites en un enfant du groupe Public
- - 2 Créez un nouveau niveau d'accès appelé Invités et n'assignez que le groupe Invités à ce niveau d'accès.
- 3 - Naviguez vers Utilisateurs → gestion des utilisateurs Paramètres et changer le groupes des visiteurs par défaut de “Public” vers votre nouveau groupe Invités

Maintenant, si nous assignons un élément de menu, un module, ou tout autre objet au niveau d'accès Invités, seulement les personnes non connectées y auront accès. Par exemple, si nous créons un nouvel élément de menu avec le niveau d'accès Invités comme cela :
Cet élément de menu ne sera visible seulement par les personnes non connectées au site.
Si cela est nécessaires, d'autre Groupe comme le groupe Auteur peuvent êtres assignés aux niveau d'accès Invités, cela permettra les membres du Groupe Auteur de voir les articles sur le frontend afin de pouvoir les éditer.
Réglage ACL par défaut
Lors de l’installation de Joomla!, les ACL sont parametrés avec leurs réglages par défaut. Nous allons décrire ces réglages initiaux afin de bien comprendre comment fonctionnent les ACL.
Groupes par défaut
Joomla 2.5 vous permet de définir vos propres groupes. Lorsque vous installez Joomla 2.5, l'installation comprend un ensemble de groupes représenté dans l'écran ci-dessous :
Les flèches indiquent les relations parent-enfant. Comme nous l'avons vu auparavant, lorsque vous réglez un droit pour un groupe parent, ce droit est automatiquement hérité aux groupes enfants. L'héritage, et le droit Autorisé peut être surchargé. Le droit Refusé ne peut pas être surchargé et aura toujours l'action Refusé pour un groupe enfant.
Configuration Générale
Joomla! version 2.5 s'installe avec les mêmes droits avec lesquels vous étiez familier sous Joomla! version 1.5. Cependant, avec 2.5, vous pouvez facilement les modifier afin de répondre aux besoins de votre site.
Comme nous l'avons vu auparavant, les droits pour chaque action sont hérités du niveau supérieur de la hiérarchie des droits ainsi que des groupes parents. Regardons comment cela fonctionne. Le premier niveau est le réglage pour l’ensemble du site. Pour régler cela, rendez-vous dans Site => Configuration => Droits. Vous obtenez l'écran suivant.
La première chose à noter est la proposition de10 Actions : Connexion au site, Connexion à l'administration, Accès hors-ligne, Super administrer, Accès à l'administration, Créer, Supprimer, Modifier, Modifier le statut, Modifier ses éléments
Connexion au site : Connexion au frontend du site.
Connexion à l'administration : Connexion au backend du site.
Accès hors-ligne : Connexion au frontend du site lorsque celui-ci est hors ligne.
Super administrer : Les utilisateurs possédant ce droit peuvent faire ce qu'ils souhaitent sur le site. Seul les utilisateurs avec ce droit peuvent changer les réglages de la configuration générale (cet écran). Ces droits ne peuvent être restreints. Il est important de comprendre cela, si un utilisateur est un membre du groupe super administrateur tous les autres droits assignés à cet utilisateur ne seront pas pris en compte. L'utilisateur peut faire n'importe quelle action sur le site. Cependant, les Niveaux d'Accès peuvent toujours être assignés afin de contrôler ce que ce groupe peut voir sur le site. (Néanmoins, un Super Utilisateur peut, s'il le souhaite, changer les Niveaux d'Accès. Donc on ne peut pas dire que ces mêmes Niveaux d'Accès soient réellement restrictifs sur ce que peut voir ou non un Super Utilisateur).
Accès à l'administration : Ouverture des écrans des différents gestionnaires (gestionnaire des utilisateurs, gestionnaire des menus, gestionnaire des articles etc).
Créer : Création de nouveaux objets (p. ex. :utilisateurs, éléments de menu, articles, liens web, etc).
Supprimer : Suppression des objets existants.
Modifier : Modification des objets existants.
Modifier le statut : Modification du statut des objets existants (Publié, Non-publié, Archivé, Dans la corbeille).
Modifier ses éléments : Edition des éléments qu'un utilisateur a lui-même créé.
Chaque groupe du site possède son propre onglet que vous ouvrez en cliquant sur le nom de ce groupe. Dans ce cas (avec les données d'exemple installées), nous avons les 7 groupes standards que nous avions sous Joomla 1.5 plus 3 groupes additionnels appelés Fournisseur et Client. Notez que nos groupes sont réglés avec les mêmes droits que sous la version 1.5 de Joomla!. Gardez à l'esprit que nous pouvons changer n'importe lequel de ces droits afin de faire fonctionner notre site comme nous le souhaitons. Regardons comment cela fonctionne.
- Public a tous les droits réglés sur Non défini
Cela peut être un peu confus. En fait, “Non défini” est la même chose que “Hérité”. Parce que Public est le niveau le plus haut, et parce que les configurations globales sont le premier niveau de la hiérarchie d'administration, il n'y a rien à hériter. Donc “Non défini” est utilisé à la place de “Hérité”.
Par défaut, dans ce cas, aucun droit n'est attribué. Le groupe Public n'a donc aucun droit spécial. Il est également important de noter que puisque aucun paramètre n'est réglé sur Refusé, tous ces droits pourront être surchargés par des groupes enfants ou des niveaux situés plus bas dans la hiérarchie des droits.
- Gestionnaire est un groupe enfant du groupe Public. Il a les droits Autorisé sur tout sauf aux droits Accès hors ligne, Super administrer et Accès à l'administration. Donc, un membre de ce groupe peut tout faire sur les parties frontend et backend du site sauf changer les Droits Globaux et les paramètres des composants.
- Un membre du groupe Administrateur hérite de tous les droits du groupe Gestionnaire et a également le droit Accès à l'administration. Donc, un membre de ce groupe peut par défaut accéder à l'écran de paramètres de chaque composant.
- Enregistré est identique à public sauf qu'il a le droit Connexion au site Autorisé. Cela veut dire qu'un membre du groupe Enregistré peut se connecter au site. Comme les droits par défaut sont hérités, cela signifie que jusqu'à ce qu'un groupe enfant surcharge ce droit, tous les groupes enfants du groupe Enregistré seront autorisés à se connecter également.
- Auteur un est groupe enfant du groupe Enregistré, il hérite de ses droits et en possède deux de plus, Créer et Modifier ses éléments. Auteur, Editeur et Rédacteur n'ont pas accès à l’administration. Nous verrons cela après, lorsque nous aborderons des droits sur le frontend.
- Rédacteur est un groupe enfant du groupe Auteur et possède en plus le droit Modifier.
- Editeur est un groupe enfant du groupe Rédacteur et possède en plus le droit Modifier le statut.
- Fournisseur est un groupe d'exemple qui est installé si vous installez les données d'exemple de Joomla!. C'est un groupe enfant du groupe Auteur.
- Client est un groupe d'exemple qui est installé si vous installez les données d'exemple de Joomla!. C'est un enfant du groupe Enregistré.
- Le groupe Super Utilisateur a les droits pour l'action super administrer. Pour cette raison, un membre de ce groupe dispose des droits de super-utilisateur sur tout le site. Seul un tel utilisateur peut accéder et éditer les valeurs du panneau des configurations Globales (Site => Configuration). Un utilisateur avec les droits sur l'action Super Admin à quelques caractéristiques spéciales :
- Si un utilisateur possède les droits Super Admin, il n'a pas besoin d'autres droits. Cet utilisateur peut effectuer n'importe quelle action sur le site.
- Seul un super utilisateur peut créer, éditer, ou supprimer un autre utilisateur appartenant au groupe Super Admin.
Il y a deux points très importants à comprendre à partir de cet écran. Le premier est de bien comprendre comment les droits sont hérités des groupes parents. Le second est de comprendre comment vous pouvez contrôler les droits par défaut par Groupe et par Action.
Ce système vous offre énormément de possibilités. Par exemple, si vous souhaitez que le groupe Fournisseurs puisse se connecter au backend du site, vous pouvez tout simplement changer la valeur du paramètre Connexion à l'administration sur Autorisé. Si vous souhaitez ne pas autoriser les membres du groupe Administrateur à pouvoir supprimer des objets ou modifier les états de ces objets, vous devez changer les droits de ces paramètres à Hérité ou Refusé.
Il est également important de comprendre que le fait d'avoir des groupes enfants est complètement optionnel. Cela vous permet de gagner du temps lorsque vous réglez de nouveaux groupes. Cependant, si vous le souhaitez, vous pouvez régler tous vos groupes comme enfant du groupe Public et n'hériter d'aucune permission de groupe parent.
Paramètres & Droits de Composants
Maintenant, continuons de voir comment les droits backend par défaut de la version 2.5 ressemblent aux droits de la version 1.5. Le groupe Super Utilisateur de Joomla 2.5 est l’équivalent du Super Administrateur de Joomla 1.5.
Simplement en regardant l'écran de Configuration Générale ci-dessous, il semblerait que le groupe Administrateur et le groupe Gestionnaire dispose de droits identiques. Cependant, avec la version 1.5 un Administrateur peut tout faire à l’exception des Configurations Générales, alors qu'un Gestionnaire n'est pas autorisé à ajouter des utilisateurs ou à travailler avec les éléments de menu. C'est également vrai dans les réglages par défaut de la version 2.5. Regardons comment cela est organisé.
Si nous naviguons vers Utilisateurs → Gestion des utilisateurs → puis cliquons sur le bouton Paramètres de la barre d'outil, nous arrivons devant l'écran suivant :
Cet écran est le même que dans les Configurations Générales (Site → Configuration → Droits) à l'exception que ces valeurs ne concernent et n'ont effet que sur les utilisateurs. Regardons comment cela fonctionne.
Premièrement, notez que pour le groupe Administrateur le droit à l'action Configurer est Autorisé alors qu'il est Non-autorisé pour le groupe Gestionnaire. Souvenez-vous que l'action Configurer, dans l'écran de Configurations Globales, donne les droits du groupe “Super Utilisateur”. Dans cet écran, l'action Configurer vous permet d'éditer les valeurs des Paramètres. Donc le groupe Administrateur peut faire cela, mais le groupe Gestionnaire ne peut pas.
Deuxièmement, notez que le groupe Administrateur hérite de l'action Accès à l'administration et le groupe Gestionnaire a lui le droit Refusé. Sur cet écran, l'action Accéder à l'administration donne au groupe l'accès au gestionnaire d'utilisateurs. Comme le groupe Administrateur a, par défaut, l'autorisation pour Accéder à l'administration, alors l'héritage du droit, ici, signifie que le groupe hérite du droit autorisé. Puisque que le groupe Gestionnaire a par défaut le droit Accès à l'administration réglé sur refusé, les membres de ce groupe ne peuvent pas accéder au gestionnaire d'utilisateurs, et ne peuvent donc effectuer aucune action en relation avec les utilisateurs.
Si vous regardez les Paramètres des Menus (Menus → Gestion des Menus) vous verrez les mêmes réglages par défaut pour le gestionnaire d'utilisateurs. De nouveau, le groupe Administrateur peut peut régler les droits par défaut pour les objets du gestionnaire de menus alors que le groupe Gestionnaire ne peut pas.
Plus simplement, vous pouvez voir que les différents droits pour les groupes Gestionnaire et Administrateur sont réglés dans les écrans des formulaires Paramètres → Droits pour les gestionnaires de menus et d'utilisateurs.
Il est également important de comprendre que ces mêmes formulaires (Paramètres → Droits), qui permettent de régler les droits par défaut, sont disponibles pour chaque objet de Joomla! : Gestionnaire de Média, Bannières, Contacts, Fil d'actualité, Redirection, Statistiques de recherche, Liens Web, Composants, Modules, Plug-ins, Templates et Langues. Vous avez donc désormais la possibilité de créer des groupes d'utilisateurs avec des réglages affinés pour les droits en backend.
Droits en Frontend
Les droits par défaut pour le frontend sont également réglés par le formulaire de paramètres. Regardons dans Contenu => Gestion des articles => Paramètres => Droits. Premièrement, concentrons nous sur les droits pour le groupe Gestionnaire

Le groupe Gestionnaire a la valeur autorisé pour toutes les actions excepté Configurer. Ces membres peuvent donc faire tout ce qu'ils souhaitent avec les articles sauf ouvrir l'écran des paramètres.
Regardons maintenant le cas du groupe Administrateur :
Le groupe Administrateur a la valeur autorisé pour l'action Configurer. Donc les utilisateurs de ce groupe peuvent ouvrir cet écran des paramètres.
Les deux groupes peuvent Créer, Supprimer, Modifier et Modifier le statut des articles.
Maintenant, concentrons-nous sur les groupes Auteur, Rédacteur, Editeur et regardons comment les droits sont réglés.
Le groupe Auteur n'a que les droits pour Créer et Modifier ses éléments :
Cela veut dire qu'un membre du groupe Auteur peut créer et éditer les articles qu'il a créer. Il ne peut pas les supprimer, changer le statut ou éditer des articles écrits par d'autres utilisateurs.
Le groupe Rédacteur a les mêmes droits que le groupe Auteur avec en plus le droit Modifier :
Les Rédacteurs peuvent donc éditer les articles écrits par d'autres utilisateurs.
Le groupe Editeur a les mêmes droits que le groupe Rédacteur avec en plus le droit Modifier le statut :
Les Editeurs peuvent donc modifier le statut des articles. Les possibilités de statuts sont : Publié, Dépublié, Archivé, Dans la corbeille.
Tous ces groupes ont hérité des droits pour Configurer et Accès à l'administration. Rappelez-vous qu'un Auteur est un enfant du groupe Enregistré, et que le groupe Enregistré n'a aucun droit par défaut excepté celui de se connecter en frontend. Puisque un Enregistré n'a aucun droit pour Configurer et Accès à l'administration, et puisque les droits d'un Auteur pour cette action sont “hérités”, alors un Auteur n'a pas non plus ces droits. Ces mêmes droits sont passés d'un Auteur vers un Rédacteur, et d'un Rédacteur vers un Editeur. Donc, par défaut aucun de ces groupes n'est autorisé à travailler avec les articles dans le backend du site.
Il est important de se rappeler que ces droits sont seulement des réglages par défaut pour les catégories et articles et pour tout groupe enfant créé. Il peuvent donc être surchargés pour un groupe enfant, pour une catégorie et pour des articles spécifiques.
Notez également qu'il n'y a pas de droit Refusé, pour aucune action, dans les réglages par défaut. Cela vous permet d'ajouter le droit Autorisé à n'importe quel niveau. Rappelez-vous, une fois que vous avez un droit réglé sur Refusé, cette action sera refusée sur tout les niveaux inférieurs de la hiérarchie. Par exemple, si vous réglez la connexion à l'administration sur Refusé pour le groupe Enregistré, (à la place de Hérité), vous ne pourrez pas régler cette action sur Autorisé pour les Rédacteurs.
Gestionnaire d'articles & Diagramme des Actions
Le diagramme suivant montre comment chaque action, dans le formulaire des droits, concerne les différentes options sur l'écran du Gestionnaire d'articles.
- Configurer permet de voir et de changer les paramètres du composant.
- Accès à l'administration permet de naviguer dans le gestionnaire d'articles. Sans ces droits, aucune autre action n'est possible.
- Créer permet de créer de nouveaux articles.
- Supprimer permet de mettre les articles à la poubelle. Notez que l’icône corbeille n'apparait dans la barre d'outil que lorsque que vous avez le filtre “Sélectionner l'état” réglé sur corbeille.
- Modifier permet de modifier les articles existants
- Modifier le statut permet de Publier, Dé-publier, Archiver ou Placer les articles dans la corbeille.
- Modifier ses éléments permet les mêmes actions que Editer mais ne s'applique que sur ses propres articles.
Actions, Groupes et Héritage
L'autre aspect des ACL est l'octroi de droits aux utilisateurs d'effectuer des actions sur des objets. Ici encore, il y a un énorme changement entre les versions 1.5 et 2.5. Dans la version 1.5, les actions autorisées pour un groupe donné étaient fixes. Par exemple, un utilisateur appartenant au groupe auteur, pouvait simplement soumettre un article, alors qu'un autre utilisateur du groupe éditeur pouvait lui, soumettre un article, mais également l'éditer, le publier, et cela, avec tous les articles. Egalement, en version 1.5, les droits étaient “tout ou rien”. Un membre du groupe éditeur pouvait éditer tous les articles du site.
Le tableau suivant résume les changements entre les versions 1.5 et 2.5
| Joomla 1.5 |
Joomla 2.5 |
|
| Groupes et Actions | Les actions autorisées par différents Groupes sont fixes. | Les actions autorisées pour chaque Groupe sont définies dans l'administration du site. |
| Champ d'application des Droits | Totalité du site. Les Utilisateurs ont les mêmes Droits sur l'intégralité des objets du site. | Les Droits peuvent être réglés à de multiples niveaux dans la hiérarchie : Site, Composant, Catégorie, Objets. |
| Droits hérités | Non applicable. | Les Droits peuvent êtres hérités à partir des Groupes parents et des Catégories parentes. |
Comment Fonctionnent les Droits
Il y a quatre possibilités de Droits pour les actions :
Non défini : Par défaut “Refusé” mais, contrairement à l'autorisation “Refuser”, ce droit peut être surchargé en réglant un groupe enfant ou en réglant un droit situé à un niveau plus bas de la hiérarchie sur “Autorisé”.
Ce droit ne s'applique que dans les Configurations Générales (Site => Configuration => Droits)
Hérité : Hériter la valeur venant d'un groupe parent ou d'un niveau plus haut dans la hiérarchie des droits.
Refusé : Refuser cette action pour ce niveau et ce groupe. IMPORTANT : Cela refuse également cette action pour tous les groupes enfants et niveaux inférieurs dans la hiérarchie des droits. Régler
“Autorisé” pour un groupe enfant d'un groupe parent réglé sur “Refusé” n'a aucun effet. Cette action va toujours se reporter sur tous les groupes enfants ainsi que sur tous les niveaux inférieurs de la hiérarchie des droits de votre site.
Autoriser : Autoriser cette action pour ce niveau et groupe et pour les niveaux inférieurs et les groupes enfants. Cela n'a aucun effet si un groupe parent ou un niveau supérieur est réglé sur refuser ou sur autoriser. Si un groupe ou niveau supérieur est réglé sur “Refusé”, alors ce droit sera toujours “Refusé”. Si un groupe ou niveau supérieur est réglé sur “Autorisé”, alors ce droit sera déjà autorisé.
Hiérarchie des Niveaux de Droits
Avec la version 2.5 de Joomla!, les droits peuvent être définis à 4 niveaux :
1. Configuration : détermine les droits par défaut pour chaque action et chaque groupe.
2. Paramètres d'un composant → Droits : peut surcharger les droits par défaut pour ce composant (p. ex : Articles, Menus, Utilisateurs, Bannières, ...)
3. Catégorie : peut surcharger les droits par défaut pour les objets dans une ou plusieurs catégories. Cela s'applique à tous les composants comportant des catégories (p.ex. :Articles, Bannières, Contacts, Fil d'actualité, et Liens Web.
4. Articles : peut surcharger les droits pour un article spécifique. Ce niveau s'applique seulement aux articles. Les autres composants ne permettent que les 3 premiers niveaux.
Configuration
Vous pouvez y accéder par Site → Configuration → Droit. Cet écran vous permet de régler le plus haut niveau de droits pour chaque groupe et pour chaque action, comme cela est expliqué dans l'écran ci-dessous :
Pour chaque valeur, les possibilités sont : Hérité, Autorisé, Refusé. La colonne “Droits appliqués” affiche l'état actuel des réglages. C'est soit Non défini (par défaut), Autorisé, ou Non autorisé. Vous ne pouvez travailler que sur un seul groupe à la fois, en ouvrant l'onglet de ce groupe. Vous changez les droits en sélectionnant le nouveau réglage dans les listes déroulantes de la colonne Modifier un droit.
Notez que la colonne Droits appliqués ne s'actualise que lorsque vous cliquez sur le bouton enregistrer. Pour vérifier que les réglages sont bien ceux que vous souhaitez, cliquez sur le bouton enregistrer puis ré-ouvrez les onglets souhaités.
Paramètres d'un Composant → Droits
Les droits de chaque composant sont accessibles, pour chacun d'entre eux, dans Composant → Paramètres (dans la barre des outils) → Onglet Droits. L'écran qui s'affiche est similaire à celui présent dans configuration. Par exemple, en cliquant sur l’icône paramètres de la barre d'outils du gestionnaire de menu (Menu → Gestion des menus) vous obtenez l'écran suivant.
L'accès à ces Paramètres est seulement autorisé aux membres des groupes dotés des droits pour configurer les actions, et cela pour chaque composant. Dans cet exemple, le groupe administrateur possède l'autorisation pour le paramètre configurer, les membres de ce groupe peuvent donc accéder à cet écran.
Note : Tous les composants natifs de Joomla ! intègrent la gestion d'ACL. Certaines extensions tiers n'intègrent pas (encore?) cette gestion.
Catégorie
Les droits de catégorie sont accessibles dans le gestionnaire de catégories : Editez la catégorie souhaitée, puis rendez-vous dans le bas de page du formulaire d'édition “Droits de la catégorie”. Cet écran possède 5 Droits.
Sur ces écrans, vous travaillez sur les droits d'un seul groupe d'utilisateur à la fois. Dans l'exemple ci-dessus, nous éditons les droits du groupe Administrateur.
Notez que les droits Configurer et Accéder à l'administration ne s'appliquent pas au niveau de la catégorie, ces actions ne sont donc pas incluses.
Notez également que les Catégories peuvent êtres classées en hiérarchie. Si c'est le cas, les droits d'action d'une catégorie parent sont automatiquement hérités par une catégorie enfant. Par exemple, si vous avez une hiérarchie de catégorie : animaux → animaux de compagnie → chiens, alors la hiérarchie complète des droits pour un article placé dans la catégorie Chien sera celle-ci :
Configuration
Gestionnaire d'articles → Paramètres → Droits
Catégorie Animaux
Catégorie Animaux de compagnie
Catégorie Chiens
Article spécifique
Article
Les droits pour un article spécifique sont accessibles dans le gestionnaire d'articles : Editez l'article souhaité, puis rendez-vous dans le bas de page du formulaire d'édition “Droits sur les articles”. Cet écran possède 3 Droits.
De nouveau, vous éditez chaque groupe en cliquant puis en ouvrant l'onglet de celui que vous souhaitez. Vous pouvez alors changer les droits sous la colonne Modifier un droit. Pour voir l'effet d'un changement, cliquez sur le bouton enregistrer (dans la barre d'outils), puis vérifiez votre changement dans la colonne Droits appliqués.
Notez que les actions Configurer, Accès à l'administration, et Créer ne s'appliquent pas au niveau de l'article, elles ne sont donc pas incluses. Le droit pour créer un article est réglé dans un des plus hauts niveaux de la hiérarchie.
Niveau d'accès
Les niveaux d'accès de la version 2.5 de Joomla! ( Utilisateurs → Niveaux d'accès) sont simples et flexibles. L'écran suivant affiche le Niveau d'Accès Spécial.
Il suffit de cocher la case pour chaque groupe que vous souhaitez inclure dans ce niveau. L'accès spécial inclut les groupes Gestionnaire, Auteur et Super Utilisateur. Il inclut également les groupes enfants de ces groupes. Donc le groupe Administrateur est inclus car c'est un enfant du groupe Gestionnaire. Les groupes Auteur, Rédacteur, et Fournisseur sont également inclus car ils sont des enfants du groupe Auteur. (Notez que si nous le souhaitons, nous pouvons cocher tous ces groupes sans que cela ne pose de problème).
Une fois que les niveaux d'accès sont créés, ils sont utilisés de la même manière que sous Joomla 1.5. Chaque objet du frontend est assigné à un Niveau d'Accès. Si un objet porte le niveau d'accès Public, alors tout le monde peut avoir accès à cet objet. Les niveaux d'accès sont assignés aux éléments de menu ainsi qu'aux modules. Chacun ne peut être assigné qu'à un seul niveau d'accès.
Par exemple, l'écran suivant montre le formulaire d'édition d'un élément de menu avec la liste de niveaux d'accès disponibles.
Séparation ACL de la vision et de l'action
Le système ACL de Joomla! peut être considéré comme étant divisé en deux système complètement séparés. Un système contrôle quelles choses les utilisateurs pourront voir sur le site. L'autre système contrôle quelles choses les utilisateurs pourront faire (quelle action un utilisateur pourra-t-il effectuer). Les ACL sont réglés différemment pour chacun de ces deux système.
Contrôler ce que les utilisateurs peuvent voir
La configuration pour contrôler ce que les utilisateurs peuvent voir se fait comme cela :
1 - Créer les différents groupes d'utilisateurs nécessaires pour le site. Chaque groupe peut être considéré comme un rôle que l'utilisateur aura sur le site. Gardez à l'esprit qu'un utilisateur peut être membre d'un ou de plusieurs groupes. Si vous le souhaitez, les groupes peuvent avoir des groupes parents. Dans ce cas, ils hériterons automatiquement des niveau d'accès de leurs groupes parents.
2 - Créer l'ensemble des niveaux d'accès requis pour le site. Cela peut être un petit nombre ou un grand nombre en fonction du nombre de groupes différents et du nombre de catégories d'articles que comporte le site. Attribuez chaque niveau d'accès à un ou plusieurs des groupes d'utilisateurs créés dans l'étape 1.
3 - Assignez chaque éléments à un niveau d'accès à partir duquel il sera accessible (il pourra être vu). Le terme élément comprend élément de contenu (articles, contact etc), élément de menu et modules.
Chaque fois qu'un utilisateur souhaite voir un élément sur une page Joomla!, le programme vérifie si l'utilisateur a accès à cet élément, comme cela :
1 - Créer une liste de tous les niveau d'accès auquel l'utilisateur a accès, basés sur tous les groupe auxquels l'utilisateur appartient. Egalement, si un groupe a un groupe parent, les niveau d'accès à ce groupe parents sont aussi inclus à cette liste.
2 - Vérifier si le niveau d'accès pour cet élément (article, module, élément de menu, etc) est sur la liste. Si oui, alors l'élément est affiché à l'utilisateur. Si non, alors, l'élément n'est pas affiché.
Contrôler ce que les utilisateurs peuvent faire
Le système qui permet de régler ce que les utilisateurs peuvent faire – Quelles actions peuvent ils effectuer sur un élément – est accessible depuis l'onglet Droits du menu Site → Configuration ainsi que dans l'onglet Droits de l'écran Paramètres de chaque composant (p.ex. : Composant → Bannières → Paramètres → Droits). Les Droits peuvent également êtres réglés au niveau des Catégorie pour les composant de bases, et également au niveau des articles.
Notez que ce réglage est totalement indépendant du réglage de vue (ce que les utilisateurs peuvent voir).
Quand un utilisateur souhaite initié une action spécifique sur l'élément d'un composant (comme par exemple éditer un article), le système vérifie le droit pour la combinaison utilisateur, élément et action. Si c'est autorisé, alors l'utilisateur peut procéder. Autrement, l'action n'est pas autorisée.
La suite de ce tutoriel explique comment nous allons contrôler ce que les utilisateurs peuvent faire.






























