SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

288 Plugins, 197 contribs sur SPIP-Zone, 181 visiteurs en ce moment

Accueil > Auteurs, authentification et autorisations > Personnalisation des droits > Autorité > Le plugin « Autorité »

Le plugin « Autorité »

20 mai 2007 – par Fil – 342 commentaires

93 votes

Ce plugin permet de configurer des « autorisations » différentes de celles 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. ?>

Télécharger

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.

L’interface de configuration
Avec le message d’erreur idoine :)

Compatibilité

La quasi-totalité des réglages ne sont opérationnels qu’avec les versions récentes de SPIP (version 2.x ou 3.x) ; 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 :

Voir en ligne : https://plugins.spip.net/autorite

Notes

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

Dernière modification de cette page le 8 novembre 2017

Retour en haut de la page

Tout afficher

Vos commentaires

  • Le 9 août à 19:37, par Spidermian En réponse à : Le plugin « Autorité »

    Bonsoir,

    J’ai collé

    $GLOBALS['spip_pipeline']['contact_infos_supplementaires'] .= '|autre_contact_infos_supplementaires';
           
    function autre_contact_infos_supplementaires($champs){
           $champs['sujet_alternatif'] = 'Sujet alternatif';
           return $champs;
       }

    dans mes_options.php et je ne vois nulle part apparaître le champ supplémentaire.
    J’ai merdé quelquepart ? Y a-t-il un soucis avec la dernière version de spip que j’utilise ?

    • Le 9 août à 19:38, par Spidermian En réponse à : Le plugin « Autorité »

      Ah ben non me suis planté de plugin...
      Voila ce que c’est de bosser avec quarante douze onglets !
      Si un moderateur veut supprimer ce message...

    Répondre à ce message

  • Le 7 août à 17:09, par Spidermian En réponse à : Le plugin « Autorité »

    Bonjour,
    je voudrais lors de la modification du statut par défaut lors de la création d’un auteur
    ajouter un nouveau statut (7expire) comme je l’ai fait dans la page de création d’un nouvel auteur à la’ide du code suivant :

    -  dans mesfonctions.php

    // Rajouter un nouveau statut pour les auteurs 7expire

    $GLOBALS['liste_des_statuts'] = array(
                    'info_administrateurs' => '0minirezo',
                    'info_redacteurs' => '1comite',
                    'info_visiteurs' => '6forum',
                    'info_abonnements_expires' => '7expire',
                    'texte_statut_poubelle' => '5poubelle'
                    );

    // Surcharger autoriser_inscrireauteur pour autoriser l'inscription avec ce nouveau statut

    function autoriser_inscrireauteur($faire, $quoi, $id, $qui, $opt){

           $s = array_search($quoi, $GLOBALS['liste_des_statuts']);
           switch ($s) {

                   case 'info_redacteurs' :
                     return ($GLOBALS['meta']['accepter_inscriptions'] == 'oui');
                 
                   case 'info_abonnements_expires' :
                     return ($GLOBALS['meta']['accepter_visiteurs'] == 'oui' OR $GLOBALS['meta']['forums_publics'] == 'abo');
                 
                   case 'info_visiteurs' :
                     return ($GLOBALS['meta']['accepter_visiteurs'] == 'oui' OR $GLOBALS['meta']['forums_publics'] == 'abo');

           }

           return false;
    }

    -  dans mesoptions.php

    // Et dans un fichier de pipeline
    function mon_plugin_abonnement_declarer_tables_objets_sql($tables){
         
           $tables['spip_auteurs']['statut_titres']['7expire'] = 'info_abonnements_expires';
           $tables['spip_auteurs']['statut_images']['7expire'] = 'auteur-7expire-16.png';
         
           return $tables;
    }

    Répondre à ce message

  • Le 30 janvier à 10:37, par l’icone créer une sous rubrique n’apparait pas En réponse à : Le plugin « Autorité »

    bonjour

    j’arrive pas a créer une sous rubrique dans l’espace réservé aux administrateurs restreint. je vous informe que j’ai pas coché l’option dans la partie configuration du site/rubriques. l’icone n’apparait pas.

    SVP Quoi faire ?

    Répondre à ce message

  • Le 14 novembre 2016 à 17:09, par Aymeric En réponse à : Le plugin « Autorité »

    Bonjour,

    Ma question concerne la gestion des documents au sein des rubriques.
    Je n’ai pas trouvé comment donner la possibilité aux administrateurs restreints de gérer les documents des rubriques dont ils sont justement administrateurs.

    Sans les droits de publication sur le site ils ne peuvent pas le faire (ce qui peut paraître logique étant donné que l’ajout d’un document le publie automatiquement avec la configuration de base).

    En clair j’aimerais trouver un montage où des administrateurs ou rédacteurs peuvent modifier le contenu des rubriques et articles auxquels ils sont associés, gestion des documents comprise.

    J’ai essayé de nombreuses configurations différentes sans succès, quelque chose m’échappe.

    Encore merci pour ce plugin, quasiment essentiel dans la gestion des droits SPIP.

    Répondre à ce message

  • Le 9 juin 2016 à 14:44, par Olivier En réponse à : Le plugin « Autorité »

    Bonjour,

    J’utilise autorité et gis sur 2 sites que je gère. J’ai une vingtaine d’utilisateurs ayant un profil « administrateur » sur une partie du site.

    Dernièrement, j’ai upgradé spip vers la 3.0.22. Avant cela, j’ai mis à jour tout mes plugins. Depuis, j’ai eu un changement dans les droits. En effet, les utilisateurs administrateurs « restreint » pouvaient associer un point géolocalisé à leur article. Hors, depuis la mise à jour, cette possibilité ne leur apparaît plus.
    Si je change les droits d’un utilisateur comme étant administrateur « complet » (c’est à dire sans limitation de rubrique), l’utilisateur a à nouveau accès à la géolocalisation.

    Est-ce que c’est une volonté du développeur de « brider » cette fonction ou est-ce un bug ou encore, peut-être que je m’y prends mal.

    Merci par avance pour votre aide !

    Olivier

    • Le 18 juillet 2016 à 15:49, par Olivier En réponse à : Le plugin « Autorité »

      Bonjour,

      Toujours pas trouvé à quoi cela était dû. Si quelqu’un a été confronté au problème, je suis preneur de toute info. Peut-être que la solution se trouve dans une version 3.1 de spip...

    Répondre à ce message

  • Le 10 février 2016 à 15:01, par 6ril En réponse à : Le plugin « Autorité »

    Bonjour,
    Sur un spip 3.1, j’aurai besoin d’autoriser les admins restreints à pouvoir accéder et utiliser les formulaires de vidage de cache.
    Je ne vois pas comment procéder, car je ne trouve pas de fonction autoriser_vider_cache ou similaire à surcharger.. Quelqu’un aurait-il une piste à proposer SVP ?
    Merci.

    • Le 1er mars 2016 à 23:10, par 6ril En réponse à : Le plugin « Autorité »

      Je me réponds à moi-même et partage la solution que je viens enfin de trouver :

      1. function autoriser_configurer($faire, $type, $id, $qui, $opt) {
      2. //echo 'faire: ' .$faire . ' - type: ' .$type;
      3. if (isset($type)) {
      4. if ($type == 'adminvider') {
      5. return $qui['statut'] == '0minirezo';
      6. }
      7. }
      8.  
      9. return $qui['statut'] == '0minirezo' AND !$qui['restreint'];
      10.  
      11. }

      Télécharger

    Répondre à ce message

  • Le 8 juillet 2015 à 18:02, par Ichem En réponse à : Le plugin « Autorité »

    Bonjour,

    Comment cacher/empêcher l’accès, pour les rédacteurs qui s’enregistrent seuls, à :
    -  Edition > Mots clés
    -  Edition > Auteurs
    -  Edition > Formulaires (Formidable)

    Afin que les rédacteurs « anonymes » ne voient que « Rubriques » et « Articles » et ne puissent que proposer un article sans avoir accès à d’autres informations dans l’espace privé ?

    Merci d’avance !

    • Le 26 octobre 2015 à 09:32, par Spipmalion En réponse à : Le plugin « Autorité »

      Plus simplement : quelle est la ligne d’autorisation à mettre dans mes_options.php pour empêcher aux rédacteurs/visiteurs d’avoir accès à Edition > Auteurs ?

      Actuellement, n’importe quel visiteur qui s’inscrit au site peut prendre la liste des emails et coordonnées personnelles de tous les admins/rédacteurs, ce qui pose un problème de spam.

    • Le 27 janvier 2016 à 16:11, par Spipmalion En réponse à : Le plugin « Autorité »

      Avancée sur la recherche des autorisations SPIP 3 :

      1. // voir le menu Edition > Auteurs : OK
      2. function autoriser_auteurs_menu($faire, $type, $id, $qui, $opt) {
      3. return $qui['statut'] == '0minirezo' AND !$qui['restreint'];
      4. }
      5. // voir une fiche auteur : OK ; mais comment l'autoriser à voir sa propre fiche ?
      6. function autoriser_auteur_voir($faire, $type, $id, $qui, $opt) {
      7. return $qui['statut'] == '0minirezo' AND !$qui['restreint'];
      8. }
      9.  
      10. // voir le menu Edition > Mots clés : OK
      11. function autoriser_mots_menu($faire, $type, $id, $qui, $opt) {
      12. return $qui['statut'] == '0minirezo' AND !$qui['restreint'];
      13. }
      14. // voir la page Mots : NE MARCHE PAS, on a toujours accès à exec=mots
      15. function autoriser_mots_voir($faire, $type, $id, $qui, $opt) {
      16. return $qui['statut'] == '0minirezo' AND !$qui['restreint'];
      17. }
      18.  
      19. // voir le menu Publication > Suivi des révisions : OK
      20. function autoriser_revisions_menu($faire, $type, $id, $qui, $opt) {
      21. return $qui['statut'] == '0minirezo' AND !$qui['restreint'];
      22. }
      23. // voir la page exec=revisions : NE MARCHE PAS, on a toujours accès à exec=revisions
      24. function autoriser_revisions_voir($faire, $type, $id, $qui, $opt) {
      25. return $qui['statut'] == '0minirezo' AND !$qui['restreint'];
      26. }
      27.  
      28. // voir le menu Edition > Articles : OK
      29. function autoriser_articles_menu($faire, $type, $id, $qui, $opt) {
      30. return $qui['statut'] == '0minirezo' AND !$qui['restreint'];
      31. }
      32. // voir la page exec=articles : NE MARCHE PAS, on a toujours accès à exec=articles
      33. function autoriser_articles_voir($faire, $type, $id, $qui, $opt) {
      34. return $qui['statut'] == '0minirezo' AND !$qui['restreint'];
      35. }
      36. // voir le menu Edition > Rubriques : OK
      37. function autoriser_rubriques_menu($faire, $type, $id, $qui, $opt) {
      38. return $qui['statut'] == '0minirezo' AND !$qui['restreint'];
      39. }
      40. // voir la page exec=rubriques : NE MARCHE PAS, on a toujours accès à exec=rubriques
      41. function autoriser_rubriques_voir($faire, $type, $id, $qui, $opt) {
      42. return $qui['statut'] == '0minirezo' AND !$qui['restreint'];
      43. }

      Télécharger

    Répondre à ce message

  • Le 10 novembre 2015 à 10:14, par Spipmalion En réponse à : Le plugin « Autorité »

    Bonjour, lorsqu’on coche « seuls les webmasters peuvent modifier la configuration du site/des plugins » dans Autorité : comment créer une exception pour la page de config d’un plugin en particulier ?

    J’ai crée un petit plugin qui ne contient qu’une page de config, destinée aux administrateurs, mais il n’y ont pas accès ...

    • Le 27 janvier 2016 à 10:42, par Mist. GraphX En réponse à : Le plugin « Autorité »

      Salut, et en mettant le lien de configuration du plugin dans un menu autre , par exemple > squelette ?

      il suffit de rajouter une ligne au paquet :

      1. <menu nom="mon_plugin" titre="mon_plugin:titre_menu" parent="bando_squelette" icone="images/mon_plugin-16.png" action="configurer_mon_plugin" />

      Sinon faut créer un fichier d’autorisations

    Répondre à ce message

  • Le 5 juin 2015 à 17:18, par pverrier En réponse à : Le plugin « Autorité »

    Bonjour,

    Je vous remonte un dysfonctionnement constaté en utilisation conjointe avec le plugin Couteau suisse.

    Impossible d’accéder à la configuration de ce dernier depuis un des comptes webmestre autre que le n°1, on obtient « admin_couteau_suisse : Accès interdit ».

    Configuration du plugin Autorité :

    • Qui peut modifier la configuration du site ? => Le webmestre
    • et
    • Qui peut modifier la configuration des plugins ? => Le webmestre

    En utilisant à la place le choix « Les administrateurs », ou en désactivant Autorité, on retrouve l’accès.

    Constaté également sur une installation "fraîche" avec les versions :
    -  SPIP 2.1.27
    -  Autorité 0.10.8
    -  CFG 1.16.1
    -  Le Couteau Suisse 1.9.7

    Je ne sais pas si ce bug concerne le code de Autorité ou du Couteau suisse...

    Répondre à ce message

  • Le 4 mars 2015 à 14:27, par flouvel En réponse à : Le plugin « Autorité »

    Permettre aux rédacteurs de créer de nouveaux rédacteurs ?

    (Je n’ai pas encore eu le temps de voir s’il était possible d’ajouter cette fonctionnalité)

    • Le 9 avril 2015 à 21:25, par flouvel En réponse à : Le plugin « Autorité »

      Bon, après qcqs essais et errements avec autoriser_exception (’modifier’, ’auteur’, $id, $autoriser=true) ;
      je me suis contenté de :

      1. ### Autorisation de créer un auteur, on peut n' être que redacteur
      2. function autoriser_auteur_creer($faire, $type, $id, $qui, $opt) {
      3. return ($qui['statut'] == '1comite' OR 'admin'); //
      4. }

      Télécharger

      et modifier le message spip_fr.php ’texte_statut_poubelle’ => ’en attente de validation (ou poubelle)’
      et un admin doit valider la création, nul !
      (comment gérer ça, permettre de modifier le statut à et seulement à la création ???...)

    • Le 9 avril 2015 à 21:31, par Maïeul En réponse à : Le plugin « Autorité »

      je ne comprend rien à vos remarques et questions.

    • Le 10 avril 2015 à 20:13, par flouvel En réponse à : Le plugin « Autorité »

      je cherche à permettre aux rédacteurs de créer de nouveaux rédacteurs.
      (avec la function autoriser_auteur_creer ci-dessus un redacteur peut créer un redacteur mais avec un statut poubelle. Il faudrait pouvoir permettre de modifier ce statut seulement lors de la création, ?exec=auteur_edit&new=oui . avec $GLOBALS ??

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • ViaSPIP 3.1

    26 février 2016 – 19 commentaires

    Après la sortie de SPIP 3.1, voici la nouvelle version du squelette ViaSPIP qui reste dans la lignée des précédentes versions. ViaSPIP 3.1 est toujours un squelette généraliste pour SPIP, sous forme de plugin, visant à offrir une alternative au (...)

  • Lecteur Multimédia

    28 février 2007 – 323 commentaires

    Le plugin « lecteur multimedia » permet la lecture et l’affichage de sons ou de vidéos. Il enrichit l’affichage des raccourcis des documents ajoutés <docX>. Il ajoute des lecteurs flash adaptés aux formats .MP3 et .FLV. Le plugin agit sur tous (...)

  • Le Squelette Zpip

    11 novembre 2009 – 353 commentaires

    Ce squelette n’est plus maintenu, il est remplacé par SPIPr-dist Zpip est un modèle de squelette réutilisable, modulaire et disposant d’une galerie de thèmes. Ce modèle de squelette rend l’installation d’un site avec son thème plus facile, et la (...)

  • Zpip-vide v2

    9 novembre 2012 – commentaires

    Zpip-vide fournit un squelette Z vide de contenu, à remplir de noisettes avec le noiZetier. Compatibilité Cette version 2 de Zpip-vide, développée pour SPIP 3, est toujours compatible avec Zpip v1. Elle est par contre incompatible avec Zpip v2 (...)

  • Menus

    18 août 2009 – 985 commentaires

    Créez enfin vos menus facilement !