Journal Zope, users, roles, groupes et sous-groupes ... pas bon menage

Posté par  .
Étiquettes : aucune
0
1
déc.
2004
Cher tous je viens ici ecrire un journal qui pourra, si des personnes m'aident à le remplir, aider pas mal de monde.

Je m'explique.

J'ai un développement à faire sur un environement Zope (pas de polémique sur on aime/on aime pas c'est Zope qui a été choisi, on ne reviendra pas dessus). Le développement est un portail collaboratif. Pour ne pas réinventer la roue (et pour gagner du temps) j'essaie de réutiliser, soit Plone, soit CPS (Si vous en connaissez d'autres, je suis prenneur).

Jusqu'a présent, tous les dévs que j'avais du faire dessus sont passés au travers d'un problème qui pourra sembler ridicule à certain. La gestion des "sous-groupes" ou nested-groups couplé à LDAP.

Je m'explique.

Le besoin (le problème en fait) est de pouvoir gérer facilement des utilisateurs stockés dans un annaire ldap (jusque la ca va via LdapUserFolder) avec des groupes (La ca va encore avec un GroupUserFolder) et des sous-groupes (et la ca va plus du tout).

Exemple concret de ce que je voudrai pouvoir gérer:

+Service Compta
++ Compta France
++++ Responsable
++++++
++++++
++++ Comptable
++++++
++++ Assistant
++++++
++ Compta Engleterre
++++ Responsable
++++++
++++ Comptable
++++++
++++ Assistant
++++++
++++++
++ Compta Italie
++++ Responsable
++++++
++++ Comptable
++++++
++++ Assistant
++++++
+Service R et D
++ Dev Windows
++++ Produit Serveur
++++++ Responsables
++++++++++
++++++ Developpeurs
++++++++++
++++++++++
++++ Produit Client
++++++ Responsables
++++++++++
++++++ Developpeurs
++++++++++
++ Dev Linux
++++ Produit Serveur
++++++ Responsables
++++++++++
++++++ Developpeurs
++++++++++
++++ Produit Client
++++++ Responsables
++++++++++
++++++ Developpeurs
++++++++++

Avec CPS (qui apparement n'est pas capable d'utiliser Gruf) ce cas n'est pas traitable. Si quelqu'un l'a déjà fait je suis avide de suggestion.

Avec Plone et si on utilise Gruf on peut magouiller pour que cela fonctionne mais de manière "tordu". (mon exemple tek quel ne fonctionne pas car deux groupes ne peuvent avoir le meme nom)

C'est à dire que l'arbre ne sera pas construit comme dans mon exemple mais ainsi:

*** POUR LES USERS ***
+ Utilisateurs
+++
+++
+++
...
+++


*** POUR LES GROUPES ***
+ groupes
+++ Service Compta
++++++ ,,,...,
+++ Compta France
++++++ ,,,
+++ Compta France
++++++ ,
+++ Comptable
++++++
+++ Assistant
++++++

....

(je ne mets pas tout)

*** POUR LES SOUS GROUPES (NESTED) ***
+groupes
++ Service Compta
++++ Compta France,Compta France,Comptable,Assistant,Compta engleterre ...
++ Compta France
++++ Comptable,Assistant

.... (je ne mets pas tout)

Bref, c'est trés lourd, compliqué et surtout rien ne semble prévu (que ce soit pour CPS ou Plone) pour gérer de tel groupe (les afficher, les supprimer, les modifier).

Un cas typique:

Sous la ZMI (le seul moyen) je creer un groupe papa. Dans le groupe papa je crée un groupe fils. et dans le groupe fils je cree un user dupont.

Sous plone. on obtient ceci.

+repertoire partagé des users "papa"
+repertoire partagé des users "fils"
++ repertoire de dupont.

Au lieu de

+ repertoire partagé des users "papa"
++ repertoire partagé des users "fils"
+++ repertoire de dupont.

Voila, donc si quelqu'un à déjà traité le cas. je suis tout ouie.

ps: cela fait moment que je cherche par moi même. google. Zope.org, plone.org, Zopera et d'autre. Mais je n'ai trouvé aucune réponse à mes questions. (en fait c'est plutot l'inverse qui se passe)
  • # euh...

    Posté par  (site Web personnel) . Évalué à 0.

    hors-sujet mais :
    ++ Compta Engleterre

    Ils vont etre content les descendant de la tribune des Angles.. hein.
    http://fr.wikipedia.org/wiki/Angleterre(...)
    Quand on pense qu'ils sont venus de l'autre cote, de la Frise (Pays-Bas) pour se retrouvé affublé d'un Engleterre...
    halala mes aieux...
  • # Ikaaro

    Posté par  . Évalué à 5.

    Ikaaro est un outil de gestion de contenu basé sur Zope, mais n'utilisant pas CMF au contraire des outils que tu cites. Et l'un des atouts d'Ikaaro est justement la gestion des groupes imbriqués (je tiens ça des dev, mais je n'ai pas encore eu le temps de m'y mettre). Il me semble que tu peux choisir plusieurs types de backend pour tes users (LDAP, SGBD,...)

    http://www.ikaaro.org/index.html/(...)
    • [^] # Re: Ikaaro

      Posté par  . Évalué à 3.

      Je confirme, c'est trop génial ! Un régal à programmer et à utiliser. Je suis vite revenu des portails à la CMF et cette saloperie de développement through the web (TTW).

      Tu peux définir des droits d'accès avec des ACL qui sont des opérations ou des fonctions renvoyant un booléen. Pour LDAP lui-même tu utilises directement la puissance et la simplicité de Python et son module python-ldap (les produits que tu cites s'appuient dessus).

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n’en sommes pas responsables.