une solution efficiente

Accès restreint

  par zones selon la hiérarchie des rubriques

Le rubriquage (cf.hiérarchie du rubriquage) est une clé d’organisation fondamentale dans SPIP (comme dans tous les CMS, et plus généralement les systèmes de classement d’information) ; nous allons voir ici que les choix de cette structuration peuvent apporter d’autres possibilités, pour couvrir très simplement une problématique fréquente : le contrôle d’accès aux informations, selon l’identification du visiteur.

Article publié le 25 novembre 2018, et actualisé en février 2021

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Un plugin -justement dénommé Accès Restreint- permet depuis SPIP 2 de gérer des zones d’accès protégés, calquées sur des branches, ou subdivisions de l’arborescence des rubriques...

En clair, vos articles à Accès restreint, ne sont pas visibles sur le Net, sauf aux auteurs autorisés, si ceux-ci se sont connectés à votre site pour s’authentifier !

 Le principe d’Accès restreint

La mise en œuvre de ce plugin est immédiate après l’installation : l’une des conséquences faciles est de mettre automatiquement tout le site en accès protégé [1], y compris toutes les pièces jointes si vous le précisez dans une option de configuration.

Deux étapes permettent la mise en œuvre de ce plugin après installation, pour chaque zone d’accès créée :
- le choix des auteurs dans un groupe auquel cette zone donne accès (espace public et/ou privé)
- la ou les branches de l’arborescence des rubriques ouverte au groupe d’auteurs choisi

Ce plugin est donc autrement plus efficace que le plugin Intranet ...
A noter que le fonctionnement du plugin pose de fait un filtre au niveau des select SQL sur toutes les tables utilisant le champ id_rubrique ; ce filtre est évalué pour chaque utilisateur connecté (et donc aussi pour les visiteurs non authentifiés : ceux-ci n’auront donc accès qu’aux articles, rubriques... et documents publiés et non restreints [2] !

 Les subtilités de la déclaration des zones

Pour protéger l’accès à une branche de l’arborescence de SPIP, il faut donc déclarer une zone (dans le menu espace privé Publication ) : ce qui est réservé aux administrateurs...

La déclaration d’une zone d’accès restreint
les auteurs déjà ajoutés ne sont pas montrés sur l’extrait ci-dessus

Donc pour chaque zone déclarée, vous pouvez préciser deux groupes d’informations :
- les auteurs (enregistrés) autorisés à consulter les articles... de cette zone,
- les rubriques (ou plus exactement branche) dont les contenus seront protégés.

A ce niveau, c’est très simple... et redoutablement probant !

Il faut imaginer la restriction d’accès des rubriques comme une restriction d’accès dans un immeuble : lorsqu’il faut une autorisation pour franchir une porte, tout ce qui est derrière se retrouve en accès restreint.

En plus une astuce vous facilitera la mise à disposition en lecture "privée" d’un site en test : cocher la racine du site protège tout le contenu, et "autoriser l’accès à cette zone à toute personne connectée" ... vous règle le problème !
Si vous tombez sur un site dont le sommaire ne vous montre.... qu’un titre / logo , ... et un bas de page, vous aurez une idée du pourquoi du comment ! Il peut être ’poli’ de forcer l’apparition de l’écran de connexion, comme avec le plugin Intranet.

Les difficultés surgiront quand vous commencerez à jongler avec plusieurs zones de rubriques.... qui se recouvrent ! Très logiquement, un article (ou une rubrique) n’est accessible que si tous les filtres de zones le laissent visible ! Ce qui signifie que, pour un auteur, dès qu’il voudra lire un article ou tout objet lié à une rubrique, il faut qu’il soit autorisé à toutes les zones couvrant cette rubrique (directement ou dans la hiérarchie arborescente ascendante). De plus, vous pourriez affiner le comportement en cas de rubrique en intersection de plusieurs zones de recouvrement.... Bon courage [3] [4]....

 Subtilités de configuration

Si vous oubliez la configuration, le fonctionnement par défaut du plugin s’établira lorsque vous déclarerez restreinte(s) une ou des zones de votre arborescence ; mais la configuration centrale vous offre quelques possibilités supplémentaires, portant sur les pièces jointes : en effet, en standard SPIP, aucun cache ne s’interpose au téléchargement direct de tous les contenus du dossier ./IMG/ contenant l’arborescence par types de tous les fichiers joints (documents ou multimedia).

La configuration du plugin

Enfin, il faut aussi signaler une autre restriction fonctionnelle, à voir Plus d’autorisations : exemples.


Merci de nous signaler les coquilles, imprécisions ou erreurs qui figureraient dans cette page.

[1Réellement inaccessible, la base de données étant filtrée en fonction de la personne auteur connecté ! Même si vous donnez l’URL directe SPIP d’un objet éditorial ou pièce jointe, l’affichage par le squelette SPIP en sera interdit.

[2La vérité de La Pallice est servie à bon port ;-)

[3Une noisette complémentaire dans chaque rubrique impactée rappelle les zones couvrant cette rubrique : bien pratique !

[4Un squelette montrant l’arborescence des rubriques, avec les zones concernées serait bien utile...


Liens A2A visibles seulement pour les inscrits.
Liens visibles seulement pour les inscrits.

Article publié le 25 novembre 2018, et actualisé en février 2021 .

Répondre à cet article