Accueil » Zope » Forum Zope » Forum Général Zope » Comment restreinte la création de comptes Plone aux administrateurs d'un site ?

 • Comment restreinte la création de comptes Plone aux administrateurs d'un site ?

Document Actions
Réponses: 3   Visites: 0
Up one level
Vous devez être un membre enregistré pour contribuer sur ce forum. Inscrivez-vous maintenant

 • Comment restreinte la création de comptes Plone aux administrateurs d'un site ?

Posté par tcr le 10/01/2008 10:45
Bonjour et bonne année 2008,

Zope-2.8.6-final - Plone 2.1.3

Pour un site web (internet), je souhaite restreinte la création de comptes uniquement aux administrateurs (rôle "administrateur"["Manager"])du site.

Dans un premier temps, j'ai masqué le lien "s'inscrire" ("join" ) au niveau de "portal_registration" de manière à n'accéder à cette fonctionnalité que par la PMI (ou ZMI) , mais le formulaire d'inscription reste disponible à un utilisateur lambda en utilisant l'adresse http://<site>/join_form.

En ZMI, j'envisage de faire un custom du "join_form" (/<site>/portal_skins/plone_login) et d'interdire son accès aux rôles autres "Manager" via l'onglet "Security", cela vous semble-t-il une bonne approche ou y a-t-il une méthode plus sécure ?

Merci de vos avis et/ou solutions,

Thierry
  • help Re: Comment restreinte la création de comptes Plone aux administrateurs d'un site ?

    Posté par tcr le 11/01/2008 16:51
    Bon, bah , je me réponds :

    1) en ZMI, au niveau du site > onglet "Security" pour la permission "Add portal member" décocher "Acquire" est cocher pour "Manager"

    à ce niveau, seul les admin du site peuvent créer des cptes, mais le process reste accessible au non admin bien qu'aucun cpte ne soit créé, pas de message d'info, pour résoudre cela :

    2) Toujours en ZMI, J'ai customisé le template "join_form" : si rôle "Manager" rien ne change, sinon affichage d'un message d'info…

    code:
    <body>

    <div metal:fill-slot="main"
         tal:define="errors options/state/getErrors;">

      <h1 i18n:translate="heading_registration_form">Registration Form</h1>
      
     <!-- Affiche le formulaire si rôle est "Manager" - TCR : custom du 11/01/08 -->
     <div tal:condition="python:mtool.getAuthenticatedMember().has_role('Manager')== 1">

      <form action=""
            method="post"
            class="enableUnloadProtection"
            tal:define="allowEnterPassword site_properties/validate_email|nothing;"
            tal:attributes="action template_id" >

    ...
    ...
      </form>
     </div>

      <!-- Affiche message si rôle n'est pss "Manager" - TCR : custom du 11/01/08 -->
      <div tal:condition="python:mtool.getAuthenticatedMember().has_role('Manager')== 0">
          <p>Désolé, vous n'avez pas les autorisations nécessaires.</p>
          <p>
          <a tal:attributes="href here/absolute_url" class="selected">Accueil</a>
          </p>      
      </div>

    </div>

    </body>


    De plus, et facultatif, à la place de "s'inscrire", j'ai ajouté "Créer un compte" uniquement visible par les admins du site, même utilisation que la création depuis la PMI (cela évite simplement d'aller en PMI, mais la création depuis celle-ci est toujours possible…) > en ZMI portal_registration (ZMI) > Add an action

    Title> Créer un compte
    Id> creercompte
    URL (Expression)> string:${portal_url}/join_form?came_from_prefs=1
    Condition (Expression)> python:portal.portal_membership.getAuthenticatedMember().has_role('Manager')==1
    Permission: Add Portal Memeber
    Category: user
    Visible:coché

    Bon, je sais au niveau Condition et Permission, c'est ceinture et bretelles !

    Thierry
  • wink Re: Comment restreinte la création de comptes Plone aux administrateurs d'un site ?

    Posté par glickind le 11/01/2008 17:43
    Les bretelles te permettront peut-etre de rattraper
    tes fautes d'orthographe :Add Portal Memeber
  •  • Re: Comment restreinte la création de comptes Plone aux administrateurs d'un site ?

    Posté par tcr le 16/01/2008 11:19
    Faute de frappe, plutôt... Merci d'avoir corrigé.
    (Dommage que l'on ne puisse modifier ses posts...)