Gestion des droits avec ACS (espace privé)

ACS permet une gestion des doits très fine (page par page) et surtout entièrement configurable par l’utilisateur de la partie privée de Spip (pour les droits d’accès aux articles sur la partie publique, voir ici [1]). La page d’administration d’ACS permet de créer des groupes d’administrateurs et de leur donner les droits d’usage exclusifs sur des pages de l’espace privé de SPIP.

Pour créer des groupes d’administrateurs, saisissez leurs noms séparés par des virgules, et validez. Ensuite, vous n’avez plus qu’à choisir les membres de vos groupes, et les pages qu’ils gèrent. Quand vous naviguez dans l’interface privée de SPIP, le nom de page correspond au paramètre exec passé dans l’url: il suffit de le lire dans la barre d’adresse de la page que l’on désire verrouiller.

Développeurs

ACS définit la fonction acs_acces("nomdepage"). Mise en début d’une page, elle en limite l’accès aux administrateurs autorisés, et redirige les autres sur une page “Accès non autorisé”. Lorsqu’un administrateur de site SPIP va sur une page d’administration du site, ACS lit la valeur du paramètre exec passé à l’url par spip, qui est le nom de la page de l’espace privé appellée (conformément aux règles de rangement des fichiers dans SPIP).

ACS permet ainsi de limiter l’accès à n’importe quelle(s) page(s) de l’espace privé de SPIP à un groupe d’administrateurs autorisés.

Et comme ACS permet de modifier entièrement design et comportement d’un site, ACS définit un groupe par défaut, celui des administrateurs ACS du site, qui seuls ont accès aux pages de configuration du site. Comme on le voit sur l’exemple ci-dessus, ACS protège par défaut non seulement les pages les plus critiques pour le bon fonctionnement du site, mais aussi celles issues de certains plugins, s’ils sont installés. Cette liste est définie dans le fichier acs_options.php.

Au delà de ces exemples simples, il existe bien d’autres possibilités (controle d’accès aux fichiers action, par exemple, pour contrôler des droits de mise à jour critiques en Ajax, ...). Certains sites existants qui n’ont pas voulu ou pas pu adapter leurs squelettes pour une configuration web par ACS n’utilisent d’ailleurs ACS dans un premier temps que pour gérer des droits d’accès.

Enfin, c’est important, le mécanisme de contrôle d’accès d’ACS est conçu pour ne pas ralentir SPIP. Il rajoute seulement un test quasi instantané sur des valeurs déjà chargées par SPIP, sans aucun appel de page ni requête base de donnée supplémentaire.

Footnotes

[1Gestion des droits d’accès aux articles: voir composant Articles à partir d’ACS 0.4, et composant Acces pour la version 0.3.

Discussion

One discussion

  • jacques rosier

    lors de la configuration du site, sur spip2.15 et ahuntsic, je ne pouvais aboutir au processus et j’obtenais le message suivant :
    “Espace interdit SPIP est déjà installé.”
    Aprés consultation de spécialistes (mon fils ) et du gestionnaire du site, nous avons constaté que c’et la version php 4 de l’hébergeur qui était incompatible avec spip 2.15 et qu’il fallait passer en php 5.
    l’ajout dans .htacess à la racine de htdocs des lignes suivantes à résolu le problème :

    AddHandler x-httpd-php5 .php
    Action x-httpd-php5 /cgibin/php5

    Reply to this message

Add a comment

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite / PostgreSQL
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparait.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Who are you?
[Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom