Xprotector

mercredi 3 août 2005
par  Vincent Beuselinck
popularité : 1%

SPIP est un systÚme de publication pour Internet qui rencontre un grand succÚs grâce à sa simplicité d’installation et d’utilisation. Il est d’ailleurs utilisé pour le site du CLX.

Xprotector est une extension logicielle qui permet de contrÎler les droits d’accÚs à la partie publique du site Web géré par SPIP selon le principe de l’authentification par mot de passe.

Précision préliminaire : avec Xprotector, il est bien question de la partie publique du site Web. Cela n’a donc aucun rapport avec les status "administrateur", "administrateur restreint" et "auteur" qui sont proposés par SPIP et concernent la partie privée du site Web.

Comment ça se passe pour le badaunaute ?

(badaud dans le sens flâneur...)

Le visiteur du site public clique sur un lien qui l’intéresse mais, ô surprise, ce texte se trouve en visibilité restreinte : il doit d’abord se faire reconnaître pour afficher les informations voulues.

Pour Xprotector, il existe des visiteurs identifiés par mot de passe et des badaunautes non identifiés. Les visiteurs identifiés sont ensuite attachés à un groupe d’utilisateurs auquel l’administrateur du site attribue des droits d’accès.

Chaque rubrique SPIP (ou sous-rubrique) peut être déclarée comme restreinte. Dans ce cas, elle n’est donc plus accessible au badaunaute. Il faut pour atteindre un de ses articles s’authentifier à l’aide d’un identifiant et d’un mot de passe.

Si la rubrique est autorisée pour le groupe d’utilisateurs auquel appartient le lecteur identifié, alors tout va bien. La page sera visible.

Si une rubrique ou une sous-rubrique n’est pas déclarée en accès limité dans Xprotector, elle est visible de tous.

Tant qu’un utilisateur n’essaye pas d’accéder à une zone restreinte, il ne lui est demandé aucune authentification.

En résumé...

PNG - 32.7 ko
- L’article 1 n’est visible que pour le lecteur identifié appartenant au groupe rouge car la rubrique de l’article 1 est restreinte au groupe rouge.
- L’article 2 est visible pour les lecteurs du groupe rouge ou du groupe bleu (rubrique restreinte à ces deux groupes)
- L’article 3 est limité au groupe bleu (rubrique restreinte au groupe bleu).
- L’article 4 n’est pas visible par le public car sa rubrique n’est autorisée à aucun groupe
- Les articles 5 et 6 sont visibles par tout public car ils sont dans une rubrique non restreinte
- les articles 7 à 9 ne sont pas encore publiés

La technique...

Xprotector crée ses propres tables mysql dans la base utilisée par SPIP. Il possède sa propre interface d’administration indépendante de celle de l’espace privée SPIP.

Il nécessite d’ajouter dans chaque fichier PHP du répertoire de base, une ligne faisant référence ou fichier
xprotect.php. Sont donc concernés : rubrique.php, article.php, sommaire.php, plan.php, breve.php... (à ne pas confondre avec les squelettes dont les fichiers possèdent des noms identiques mais avec pour extension .html).

L’installation et la mise en service de Xprotector sont très faciles, y compris sur des serveurs SPIP déjà en service. Il faut néanmoins prévoir un peu de temps pour retoucher l’oeuvre : la page d’identification est spartiate et l’interface en ligne comporte quelques fautes d’orthographe qu’il faut chasser.

Le fait de déclarer une rubrique en accès restreint ne concerne pas les sous-rubriques (mais, sur sourceforge.net, vous trouverez un patch pour Xprotector, qui vous aidera à limiter l’accès aux sous rubriques).

Il n’y a pas moyen non plus de prendre un "auteur SPIP" pour l’insérer dans un "groupe d’utilisateurs autorisés" même en recopiant les information directement dans la base mysql : l’encodage du mot de passe n’est pas identique. On ne peut donc éviter la double saisie des mots de passe.

Conclusion

Si on veut un espace "semi-public" simple à mettre en oeuvre sans remettre en question le choix SPIP, Xprotector est un très bon outil. Mais ça reste un outil d’appoint. Il ne propose, par exemple, aucun formulaire de demande d’identifiant. Le lecteur doit écrire au webmestre qui fait la saisie à la main de ce nouveau lecteur et lui attribue un groupe de droits.

Quelques liens pour aller plus loin avec Xprotector...
- http://spip-edu.edres74.net/article...
- http://www.metacites.net/article69.html

... et concernant la protection des rubriques par mots de passe
- http://www.spip-contrib.net/Comment...



Documents joints

PDF - 90.8 ko

Commentaires

mercredi 21 mars 2007 à 19h49 - par  beuz

Maj : à partir de la version 1.9 de spip, il existe un plugin disponible sur spipcontrib dénommé "accÚs restreint" qui fait la même chose et s’intÚgre mieux avec spip.

Logo de Cédric
mardi 7 février 2006 à 09h54 - par  Cédric

J’utilise la réécriture d’URL de Spip. Normalement la page -Films-.html est réécrite à l’aide de la rÚgle suivante :
RewriteRule ^-[^/\.]+- ?(\.html) ?$ rubrique.php3 [QSA,E=url_propre :$0,L]
On est donc (de façon cachée) redirigé vers la page rubrique.php3 de Spip.
Le problÚme est que cette derniÚre page ne dispose pas de $_REQUEST[’id_rubrique’]. Il faut que je fouille de ce coté pour voir comment Spip fait pour récupérer l’id de la rubrique à partir du nom de la page.

Merci d’avance pour votre aide, si vous avez des connaissances à ce sujet.

mardi 7 février 2006 à 06h09 - par  Beuz

Donc ça veut dire que les URL sont réécrites, il faut voir s’il ne faudrait pas appeler xprotector également dans le fichier php correspondant...

Je n’utilise pas (faute de temps) la réécriture d’URL donc ce n’est pas certain

Logo de Cédric
mardi 7 février 2006 à 04h03 - par  Cédric

Je me suis installé XProtector sur un site spip. Mon problÚme est qu’il bloque bien une rubrique lorsque j’y accÚde par www.site.fr/rubrique.php3?id_rubrique=4, mais pas par www.site.fr/-Films-html (ma rubrique Films est la rubrique 4). Dans ce dernier cas, la page s’affiche sans être bloquée.
Auriez vous une idée d’où cela peut venir et ci cela est normal.
Merci d’avance pour votre réponse.

Cédric

Navigation

Mots-clés de l’article

Articles de la rubrique

Agenda

<<

2019

>>

<<

Avril

>>

Aujourd’hui

LuMaMeJeVeSaDi
1234567
891011121314
15161718192021
22232425262728
2930     

Annonces

Annuaire LibreNord

Retrouvez l’annuaire de logiciels libres créé par l’association Club Linux Nord-Pas de Calais sur le site suivant http://www.librenord.org