SPIP - Contrib

[ar] [en] [es] [fr] [it]



Accueil du site > Auteurs et Authentification > Personnalisation des droits > Autorité

Le plugin « Autorité »

dimanche 20 mai 2007, par Fil. Dernier ajout jeudi 23 août 2007


Ce plugin permet de configurer des « autorisations » différentes des autorisations par défaut.


Introduction

D’aucuns trouvent le modèle d’autorisations de SPIP trop rigide (voir « psychorigide ») : par exemple, seuls les rédacteurs en qui l’on a confiance (et qu’on a donc promu « administrateurs ») sont autorisés à modifier les articles déjà publiés.

Depuis sa version 1.9.2, SPIP propose toutefois une API (interface de programmation) qui centralise tous les contrôles d’autorisations diverses et variées.

Le plugin « Autorité » est le premier à exploiter cette API pour proposer d’autres modes de fonctionnement hiérarchique. Il utilise (et nécessite) le plugin CFG, ce qui fait que son code reste relativement simple, en tous cas sans superflu.

Fonctionnalités

Dans sa version 0.9, le plugin « Autorité » propose les possibilités suivantes :

Rôle de webmestre

Ce rôle est indispensable pour modifier la configuration du plugin. Le webmestre est, par défaut, l’administrateur id_auteur=1 du site.

Les webmestres ainsi définis ont également le privilège de ne plus être obligés de passer par FTP pour valider les opérations sensibles du site, comme la mise à jour de la base de données ou la restauration d’un dump.

On peut changer la liste des webmestres en allant éditer le fichier config/mes_options.php (à créer le cas échéant), pour y indiquer l’id_auteur des auteurs qui auront les autorisations de webmestre. Par exemple, si les webmestres sont les administrateurs 2, 4 et 11 :

  1. <?php
  2. define ('_ID_WEBMESTRES', '2:4:11');
  3. ?>

Droits des auteurs et visiteurs

  • Auteur modifie article : chaque rédacteur (ou visiteur si l’on utilise un plugin tiers type Openpublishing) peut modifier les articles dont il est l’auteur (uniquement via les crayons pour les visiteurs) ;
  • Auteur modère forum : chaque rédacteur peut modérer le forum des articles dont il est l’auteur ;
  • Auteur modère pétition : chaque rédacteur peut modérer la pétition des articles dont il est l’auteur.

À noter : le premier de ces choix valide obligatoirement les deux suivants.

Droits des rédacteurs

  • Rédacteur modifie email : chaque rédacteur peut modifier son email sur sa fiche d’informations personnelles ;
  • Mots-clés : qui peut créer et éditer les mots-clés (administrateurs restreints, rédacteurs...) ;
  • Rédacteur voit stats : les rédacteurs peuvent visualiser les statistiques.

Crayons

  • Editer les forums : par défaut, personne n’est autorisé à modifier les forums ; ce réglage permet de laisser le webmestre (ou les administrateurs) éditer les forums. Mais aussi, si on le souhaite, les auteurs des messages de forum eux-mêmes (à condition qu’ils soient identifiés). Une option (très expérimentale) permet de ne laisser cette dernière autorisation que pour une durée d’une heure ;
  • Editer les signatures : par défaut, personne n’est autorisé à modifier les signatures de pétition. Ce réglage permet d’ouvrir ce droit au webmestre ou aux administrateurs.

Attention : pour ces deux réglages, SPIP n’offre pas d’interface de modification ; il faut utiliser Crayons (ou développer un plugin spécifique).

Espace wiki

Après avoir choisi dans le menu un secteur que l’on veut traiter comme un wiki (c’est-à-dire éditable par tous depuis l’espace public — à condition d’avoir une interface, par exemple les crayons), on indique si l’on souhaite ouvrir le wiki :

  • aux rédacteurs du site ;
  • aux visiteurs enregistrés ;
  • à tous les visiteurs du site.

Configuration du site :

  • interdire la configuration du site aux administrateurs non-« webmestres » ;
  • autoriser les sauvegardes pour les administrateurs restreints / ou les interdire pour tous ;
  • interdire de supprimer les données de la base (s’ajoute à l’authentification FTP) ;
  • interdire la création de nouvelles rubriques à la racine, ou en sous-rubriques.

Configuration des auteurs :

  • À la création d’un auteur, quel est son statut par défaut ?
  • Quels types d’auteurs peut-on associer à des rubriques ?
  • Ignorer la notion d’administrateur restreint

D’autres réglages peuvent s’ajouter à ces idées... N’hésitez pas à faire des propositions et à participer au développement.

Installation & configuration

C’est « plug and play ». Une fois les deux plugins « Autorité » et « CFG » activés, on se rend sur la page ecrire/?exec=cfg&cfg=autorite pour modifier les réglages (si l’on n’indique aucun réglage, les autorisations standards de SPIP s’appliquent).

Ensuite, roule le navire, après un éventuel vidage du cache les nouvelles autorisations sont en place.

Compatibilité

La quasi-totalité des réglages nécessitent de travailler avec la branche de développement de SPIP ; seul le réglage auteur modifie article est compatible avec SPIP 1.9.2a. Il faut également une version de CFG supérieure ou égale à 1.0.2.

Structure du code (si vous souhaitez participer au développement)

Le plugin est développé sur SPIP zone, vous pouvez le charger par svn :

Ce plugin comporte quatre fichiers principaux [1] :
- plugin.xml décrit le plugin ;
- inc/autoriser.php étend le système d’autorisations et définit les fonctions nécessaires lorsque les autorisations sont différentes des autorisations par défaut ;
- fonds/cfg_autorite.html définit l’interface de configuration, sous forme d’un simple squelette (ceci grâce au plugin CFG) ;
- fonds/cfg_autorite_fonctions.php établit la liste des webmestres pour affichage dans le panneau de configuration (Cf. copie d’écran ci-dessous).

Dans inc/autoriser.php on fait bien attention à coder très proprement les fonctions, de manière à toujours pouvoir les redéfinir « de l’extérieur » (dans mes_options.php par exemple) ; le cas échéant, un message adapté signale les conflits dans le panneau de configuration.

Il est recommandé, lors des tests, d’utiliser plusieurs navigateurs connectés sous des profils d’utilisation différents ; et d’activer le debug des autorisations en inscrivant dans mes_options.php la ligne :

Notes

[1] Les autres fichiers sont les icones, les chaînes de langue et le pipeline qui permet d’ajouter un onglet dans la page de configuration.


Répondre à cet article

  • Le plugin « Autorité »

    11 décembre 2007 12:09, par Domi

    Avec ce plugin serait-il possible de permettre à un rédacteur de valider lui-même la publication de son article sans passer par l’administrateur ? Merci.

    Répondre à ce message

    • Le plugin « Autorité » 11 décembre 2007 15:49

      Pour le moment non, mais ça ne devrait pas être très compliqué à ajouter.

      Répondre à ce message

      • Le plugin « Autorité » 11 décembre 2007 19:37, par Domi

        Personnellement je ne suis pas un développeur de SPIP mais un simple utilisateur débutant...

        Je crois que je vais me contenter pour l’instant de nommer mes participants "administrateurs de rubrique" en leur expliquant bien qu’il ne faut pas qu’ils aillent mettre leur nez partout.

        S’ils sont sages, ça devrait aller !

         ;o))

        A +

        Répondre à ce message

    Retour au début des forums

  • Le plugin « Autorité »

    28 octobre 2007 07:44, par Fan de MultiSaisons

    Ce plugin me pose des pbs d’affichage et d’accès à certaines pages de l’espace privé (modification de vieux articles, sauvegarde de la base de données). Au lieu que les dites pages ne s’affichent j’ai une page blanche.

    Tout rentre dans l’ordre si je le désactive.

    Je suis chez free (et n’ai pas le choix de l’hébergeur), en spip 1.9.2c. J’ai testé la version du plugin du 28 août comme celle du 20 octobre et j’ai le même problème.

    Rien à signaler sur la partie publique...

    http://aikidobudoclub.free.fr

    Répondre à ce message

    Retour au début des forums

  • Le plugin « Autorité »

    28 novembre 2007 22:21

    J’ai trouvé un petit os : j’aurais aimé par exemple ne pas toucher au statut de l’internaute. hors si je veux activer autorité je dois faire un choix : ou auteur par défaut ou visiteur par défaut. Perso j’aurais aimé laisser ce choix à l’internaute.

    ne pourrait-on pas avoir une possibilité de plus ?
    - visiteur par défaut
    - auteur par défaut
    - aux choix de l’internaute, (ne pas agir)

    Parce que là je ne peux valider les autres fonctions sans faire ce choix contraignant pour moi.

    Répondre à ce message

    • Le plugin « Autorité » 28 novembre 2007 22:24, par Fil

      Je ne comprend pas trop la question. Il me semble qu’avec ou sans le plugin, c’est pareil ?

      Et comme qui peut le plus peut le moins, pourquoi un internaute choisirait-il d’être "visiteur" s’il peut être "rédacteur" ?

      Répondre à ce message

      • Le plugin « Autorité » 30 novembre 2007 01:14

        Si “autorité” est configuré rédacteur par défaut, alors un visiteur qui s’inscrirait avec“spip-list” ne recevrait pas de statut dans spip. Idem dans un sens contraire : si “autorité” est en visiteur par défaut alors l’internaute qui s’inscrirait comme rédacteur n’aurait pas de statut.

        Même un admin ne peut pas modifier ce statut : il n’apparait pas dans les listes d’auteurs ou de visiteurs sous spip. Du coup c’est ennuyeux.

        Répondre à ce message

    Retour au début des forums

  • Lors de l’accès à la config du plugin, spip me renvoi :

    Erreur... Fichier exec/cfg introuvable

    Incompatibilité ou erreur de ma part ?

    Répondre à ce message

    Retour au début des forums

  • Le plugin « Autorité »

    9 novembre 2007 18:12, par Alain Sichel

    Je n’arrive pas à faire fonctionner le plugin Autorité (0.9.1) sur un site en 1.9.2c, même en n’activant pas d’autre plugin que cfg, je n’obtiens qu’une liste de messages d’erreur et je ne trouve pas l’origine de ce problème :

    Warning : in_array() [function.in-array] : Wrong datatype for second argument in /home/lescentr/www/ecrire/public/composer.php(48) : eval()’d code on line 45

    J’ai exactement le même problème sur un autre site passé récemment de la version 1.8.3 à 1.9.2b

    Répondre à ce message

    Retour au début des forums

  • Le plugin « Autorité »

    2 octobre 2007 22:59, par Bruno

    Ce plugin me semble effectivement très intéressant et ouvrir pas mal de possibilités ... Mon besoin est le suivant : Que des rédacteurs puissent modifier leurs articles mais que ces corrections soient obligatoirement validées par un admin (restreint ou pas) avant publication.

    J’ai l’impression que cela n’est pas prévu ... mais je me trompe peut-être ... Merci.

    Répondre à ce message

    • Le plugin « Autorité » 3 octobre 2007 00:19

      Dans le schéma actuel, un article est toujours dans son état "courant".

      On pourrait peut-être envisager un formulaire de proposition de modifs qui irait remplir la table spip_versions, avec possibilité ensuite de valider ces propositions, mais 1) ça n’est pas fait, et ça risque d’être relativement difficile à faire 2) ce n’est pas directement lié au plugin Autorité (la question des droits est secondaire).

      Répondre à ce message

    Retour au début des forums

  • admin restreints

    19 septembre 2007 21:24, par dd

    Tout d’abord merci pour ce plugin très utile.

    Je ne sais pas si c’est possible mais j’ai besoin de modifier les droits des administrateurs restreints : je ne veux pas qu’il puisse modifier les droits des rédacteurs. Est-ce que c’est possible ?

    Dans la config je n’ai pas autorisé les sauvegardes pour les administrateurs restreints et pourtant cette option apparait pour eux ..

    Ma version de SPIP est SPIP 1.9.2b [9381] et bientôt 1.9.2c..

    merci

    catherine

    Répondre à ce message

    • admin restreints 19 septembre 2007 21:26, par Fil

      Comme indiqué dans l’article : « seul le réglage auteur modifie article est compatible avec SPIP 1.9.2 ». Le reste concerne la branche développement de SPIP 1.9.3.

      Répondre à ce message

    Retour au début des forums

  • Le plugin « Autorité »

    5 septembre 2007 15:26, par Alex

    Merci c’est exactement c dont j’avais besoin principaement pour la onction de modification d’article pour les redacteurs. Par contre j’ai un bug : lorsque un redacteur veut ajouter un logo ou un document à partir d’une page type : http://www.site.com/ecrire/?exec=ar... tout fonctionne mais il y a un problème avec ajax qui ne charge pas les nouvelles images ou docs sans qu’on rafraichisse la page. J’utilise certe une version 1.9.2 mais étant donné que ce rafraichissement automatique par ajax fonctionne en temps normal je pense qu’il doit y avoir un bug. Je change de version de spip tout de même dans la journée pour m’en assurer.

    Répondre à ce message

    Retour au début des forums

  • Gestion des droits insuffisante !

    12 juillet 2007 13:26, par Sacha

    Bonjour,

    Ne le prenez pas mal ce que je vais vous dire, c’est très sympa d’avoir fait SPIP, d’avoir fait le plugin Autorité. J’ai quand même des critiques à vous soumettre, ce n’est pas par méchanceté, juste un retour d’impressions.

    J’ai l’impression que cela vient du fait que, dès le départ, les droits d’accès étaient mal définis.

    - Un rédacteur, par définition, est là pour rédiger des articles. Mais aussi modifier les articles existants, les articles en cours de rédaction et les articles proposés, non ? Pourquoi ne peu-on pas appliquer ces autorisations ?
    - Certains diront que dans ce cas, on peut les définir administrateurs. Mais là, c’est la pagaille, les administrateurs (même restreints) peuvent modifier les comptes des autres utilisateur, ce qui n’a plus rien à voir avec le statut du "Rédacteur" !
    - Les administrateurs ne peuvent toujours pas modifier un article en cours de rédaction créé par un autre utilisateurs. Et quand à la rédaction collective ? N’était-ce pas justement le but de SPIP ?
    - Pourquoi les administrateurs et les rédacteurs ne peuvent-ils pas avoir une clé PGP définie dans leur profil ?
    - Il existe aussi un certain nombre de bugs, on clique sur un lien et on tombe sur un "Accès interdit" - Quelle utilité de mettre un lien dans ce cas ? C’est sans doute le plugin Autorité qui fait ça.

    Moi, tout ce que je voulais, c’est d’avoir un site où les articles sont rédigés par plusieurs rédacteurs, et une fois qu’ils sont prêts, ils sont proposés à l’évaluation, et, enfin, validés pour la publication par les administrateurs. La gestion des versions (qui existe dans SPIP) est incontournable dans ce cas.

    Et aussi, il paraît intéressant de laisser les rédacteurs modifier les articles déjà publiés, mais faire en sorte que les administrateurs valident ces changements pour les rendre publics.

    Moi je pense comme ça. Pensez-vous autrement ou alros c’est juste une question de temps de développement ?

    Voir en ligne : Phénix.net (mon site)

    Répondre à ce message

    • Gestion des droits insuffisante ! 12 juillet 2007 13:52, par Fil

      Merci pour ce commentaire, même si j’ai du mal à démêler le troll, les bugs et les demandes de fonctionnalités

      Peux-tu préciser les bugs rencontrés (accès interdit, ok, mais sur quelles pages et en partant de quel lien ? et quelle version de SPIP utilises-tu ?)

      Pour ce qui est du modèle que tu envisages, il semble manquer :
      - le droit pour un rédacteur de modifier un article dont il n’est pas signataire (facile à faire)
      - le système de validation de corrections sur un article publié (ça c’est un peu plus dur)

      Répondre à ce message

      • Gestion des droits insuffisante ! 14 juillet 2007 13:55, par Sacha

        Fil, j’ai cliqué sur le lien "Prévisualiser" d’une page proposée à l’évaluation faite par un administrateur, alors que j’étais connecté en tant que rédacteur. Le plugin Autorité était configuré pour accepter les modifications des articles proposés à l’évaluation par les rédacteurs. Résultat : une page avec "Accès interdit". (Version SPIP 1.9.2 je crois ou alors la 1.9.3 mais je ne pense pas)

        Je m’excuse si tu prends mal mon quelconque propos, sache que c’est involontaire, l’unique but étant de passez une critique (que l’on la néglige ou pas, de toute façon ça ne coute rien).

        Quand à moi j’ai compris que Spip ne couvrait que partiellement mon projet, c’est pourquoi je vais repartir du début pour faire une applications plus adaptée.

        Bonne journée Sacha

        Répondre à ce message

        • Gestion des droits insuffisante ! 15 juillet 2007 01:08, par Fil

          Je viens d’essayer le scénario que tu indiques (je suis rédacteur, je propose mon article, je le prévisualise et j’active les crayons), et, sur la version de dév, je n’ai pas d’accès interdit.

          Répondre à ce message

          • l’admin restreint. 18 août 2007 16:02, par stef d’art-lo

            Un truc qui me gêne un peu : avec crayon et autorité, le webmestre, l’admin, l’auteur et le forumeur enregistré peuvent modifier un message. Mais l’admin restreint lui ne peut pas, et celà même s’il est auteur de l’article qui est dans sa rubrique. Me trompe-je ?

            Répondre à ce message

    Retour au début des forums

  • Le plugin « Autorité »

    1er mai 2007 08:45, par cedric

    Ha ! Fil !

    Je l’attendais avec impatience ce plugin !

    Je te remerci chaleureusement ;

    Je le teste dès que j’ai du temps !

    MERCI !!!!

    Répondre à ce message

    Retour au début des forums

0 | 25 | 50



Suivre la vie du site RSS 2.0 | Plan du site | Espace privé | Charte et fonctionnement SPIP-Contrib | SPIP | L'autre.net