Dessiner la structure et préparer les règles d’accès
Objectif de la leçon
Construire un plan de catégories, forums et sous-forums, puis décrire les accès attendus pour quatre profils de test sans confondre classement et autorisation.
Explications
Du besoin au plan
Dans la leçon précédente, nous avons identifié les personnes et leurs besoins. Nous allons maintenant décider où leurs échanges seront rangés et comment nous vérifierons les accès.
Nous préparons deux documents très courts : un plan des espaces et une liste des droits attendus. Aucune permission n’est encore modifiée dans phpBB.
1. Catégorie, forum et sous-forum
Une catégorie regroupe des forums sous un titre commun. Elle sert à organiser la page. Dans notre projet, « Accueil de l’association » sera une catégorie.
Un forum accueille des sujets de discussion. « Questions publiques » sera un forum : une personne pourra y ouvrir un sujet intitulé « Quand a lieu la prochaine rencontre ? ».
Un sous-forum est un forum placé à l’intérieur d’un autre forum. Il reste un espace de discussion, avec ses propres sujets et ses propres permissions. Nous utiliserons un seul niveau de sous-forum pour apprendre cette possibilité sans rendre la navigation inutilement profonde.
Enfin, un sujet contient une discussion, et chaque intervention est un message. Lorsque vous créez la rubrique « Questions publiques », vous créez un forum ; lorsque vous y posez votre première question, vous créez un sujet. Ce sont deux actions différentes.
2. Notre structure cible
Recopiez ce plan dans vos notes. Chaque ligne précise le type et le parent pour pouvoir le lire sans dessin.
- Catégorie « Accueil de l’association », sans parent.
- Forum « Annonces », dans « Accueil de l’association ».
- Forum « Questions publiques », dans « Accueil de l’association ».
- Catégorie « Espace des adhérents », sans parent.
- Forum « Vie de l’association », dans « Espace des adhérents ».
- Forum « Projets », dans « Vie de l’association » : c’est notre sous-forum.
- Catégorie « Équipe », sans parent.
- Forum « Coordination », dans « Équipe ».
Le mot parent désigne l’élément qui contient directement celui que nous plaçons. Le parent de « Projets » sera donc « Vie de l’association », et non « Espace des adhérents ».
L’ancienne catégorie et « Votre premier forum » restent présents à côté de ce projet. Un espace temporaire « Essai de classement » nous permettra aussi de nous exercer au déplacement. Nous identifierons toujours l’élément d’exercice avant de le modifier.
3. Donner un rôle clair à chaque rubrique
« Annonces » présentera les informations officielles de l’association. Le nom de ce forum ne transforme pas automatiquement les sujets en annonces spéciales de phpBB : nous y publierons d’abord des sujets ordinaires.
« Questions publiques » permettra aux personnes inscrites d’échanger avec l’association. Les visiteurs pourront lire les réponses déjà apportées.
« Vie de l’association » accueillera les échanges internes des adhérents. Son sous-forum « Projets » séparera les discussions consacrées aux projets. Nous apprendrons ainsi à choisir un sous-forum pour un besoin précis.
« Coordination » sera réservé à l’équipe. On pourra y préparer une activité avant d’en publier l’annonce destinée au public.
Si deux rubriques ont exactement le même rôle, commencez par une seule. Des noms précis et des descriptions courtes aident le lecteur à savoir où publier. La multiplication des rubriques n’est pas un objectif du cours.
4. Définir quatre profils de vérification
Un profil de vérification désigne ici une situation que nous allons tester. Ce n’est pas un nouvel écran de phpBB.
Premier profil : le visiteur déconnecté. Il lit Annonces et Questions publiques. Il ne participe pas aux discussions et n’accède pas aux deux espaces privés.
Deuxième profil : une personne inscrite sans adhésion à l’association. Nous créerons le compte « inscrit_test ». Cette personne lit Annonces, participe à Questions publiques et n’accède pas aux espaces réservés aux adhérents ou à l’équipe.
Troisième profil : un adhérent. Nous utiliserons « eleve_test », déjà créé dans le premier cours, puis nous l’ajouterons au groupe d’adhérents. Il conserve les accès publics et participe aussi à Vie de l’association et à Projets. Il n’entre pas dans Coordination.
Quatrième profil : un membre de l’équipe. Nous créerons « equipe_test », membre à la fois du groupe d’adhérents et du groupe de l’équipe. Il pourra participer dans les espaces des adhérents, entrer dans Coordination et publier dans Annonces. Il recevra aussi des droits de modération limités à Questions publiques, dans une leçon dédiée.
5. Ce qu’est un groupe
Un groupe rassemble des comptes auxquels on peut accorder des permissions communes. Nous créerons « Adhérents de l’association » et « Équipe de l’association ». Les comptes inscrits appartiennent déjà à des groupes prédéfinis de phpBB ; nous expliquerons leurs particularités avant de créer les nôtres.
Une même personne peut appartenir à plusieurs groupes. C’est nécessaire dans notre exemple : un membre de l’équipe est aussi un adhérent et un utilisateur enregistré. Il faut donc raisonner sur l’ensemble de ses appartenances, pas seulement sur le nom d’un groupe affiché près de son compte.
Le compte « CamilleAdmin » nous permettra de configurer le forum. Il ne remplace pas ces quatre profils de vérification : un compte d’administration peut avoir des pouvoirs qui ne correspondent pas à ceux d’un participant ordinaire.
6. Le classement ne fait pas la sécurité
Placer un forum sous une catégorie nommée « Équipe » ne suffit pas à le réserver à l’équipe. Écrire « Privé » dans sa description ne le protège pas davantage. Les permissions de consultation et de participation doivent être configurées pour les groupes concernés.
De même, un sous-forum n’est pas une promesse d’héritage automatique et permanent des permissions de son parent. Nous vérifierons ses droits séparément. Quand phpBB propose une copie de permissions, il faut savoir quelle source est choisie et quel élément sera modifié ; cette copie sera expliquée avant son utilisation.
Pour notre plan, « Projets » doit avoir les mêmes accès que « Vie de l’association ». C’est un résultat à obtenir et à contrôler, pas une conséquence garantie par sa position dans l’arborescence.
7. Définir ce que veut dire “réussi”
Une vérification complète comporte des réussites et des refus attendus. Si inscrit_test lit une question publique, c’est réussi. S’il ne peut pas ouvrir Coordination, c’est également réussi : cet accès ne lui est pas destiné.
Nous noterons donc trois éléments : le compte utilisé, l’action essayée et le résultat attendu. Par exemple : « eleve_test ; ouvrir Projets ; autorisé ». Autre exemple : « inscrit_test ; ouvrir Projets ; refusé ».
Un espace absent du sommaire n’est pas à lui seul une preuve de confidentialité. Dans les dernières leçons, nous vérifierons également les liens directs vers les espaces d’exercice. Pour le moment, vous devez simplement comprendre pourquoi nous testerons les deux situations.
La prochaine étape
Nous créerons d’abord les éléments du plan dans le panneau d’administration. Leur absence éventuelle de l’index public sera normale tant que leurs permissions n’auront pas été attribuées. Le cours présentera les groupes, puis les réglages d’accès, dans cet ordre.
Exemple commenté
Lea écrit : « Projets est un sous-forum de Vie de l’association. Un adhérent peut y participer ; une personne seulement inscrite ne peut pas le consulter. »
Cette phrase contient deux décisions distinctes : l’emplacement et l’accès. Si elle déplaçait Projets ailleurs, elle devrait encore vérifier que les droits correspondent au besoin.
Elle prépare aussi deux tests complémentaires : eleve_test doit pouvoir ouvrir Projets ; inscrit_test doit se voir refuser l’accès. Le refus du second compte sera une réussite du test.
Exercice à réaliser
1. Recopiez le plan des huit éléments : trois catégories et cinq forums, dont Projets est un sous-forum.
2. Pour chaque forum, notez son parent exact.
3. Rédigez les accès attendus des quatre profils : visiteur, inscrit, adhérent et équipe.
4. Préparez quatre lignes de test : visiteur lit Annonces ; inscrit_test participe à Questions publiques ; eleve_test accède à Projets ; inscrit_test ne peut pas ouvrir Coordination.
5. Expliquez en une phrase pourquoi un nom de catégorie ne suffit pas à protéger son contenu.
Gardez ce plan pour le chapitre suivant. Ne créez pas encore de comptes ou de permissions : leurs formulaires et leurs conséquences seront expliqués avant les exercices correspondants.
Correction et résultat attendu
Le plan doit contenir trois catégories de premier niveau : Accueil de l’association, Espace des adhérents et Équipe.
Annonces et Questions publiques ont pour parent Accueil de l’association. Vie de l’association a pour parent Espace des adhérents. Projets a pour parent Vie de l’association. Coordination a pour parent Équipe.
Le visiteur lit seulement les espaces publics. L’inscrit participe à Questions publiques. L’adhérent ajoute les accès à Vie de l’association et Projets. L’équipe accède aussi à Coordination et publie dans Annonces.
Un nom de catégorie sert à comprendre le rangement ; les permissions déterminent l’accès réel. Les tests doivent comprendre des autorisations attendues et des refus attendus.
À retenir
Une catégorie regroupe ; un forum contient des sujets ; un sous-forum est un forum avec un forum pour parent.
Le parent précise le classement, pas une protection automatique.
Nous distinguons quatre profils : visiteur, inscrit, adhérent et équipe.
Une personne peut appartenir à plusieurs groupes.
Les refus attendus font partie des critères de réussite du projet.
Seuil de réussite, en pourcentage : 100 %. QCM obligatoire pour terminer le cours.