Bonjour, Pour ma première application avec CakePHP, je suis confronté à un problème complexe avec l'authentification.
Voici pour commencer le fonctionnement que doit avoir l'application : Il y a 3 parties dans mon application : - la partie public, - la partie privée, - la partie administrative. Chaque utilisateur enregistré peut appartenir à la partie privée mais également la partie administrative. J'ai donc besoin d'un système de groupe. Ensuite chaque utilisateur enregistré peut appartement à une ou plusieurs structures. Ces utilisateurs n'ont pas tous les mêmes droits dans ces structures : - utilisateur classique, - administrateur de la structure. J'ai donc besoin d'un autre système de groupe. Chaque utilisateur a donc des permissions particulières pour certaines actions dans ces structures. Pour gérer tout ça, j'imaginais utiliser l'authentification ACL en utilisateur le tutorial "Gestion des droits d'accès par groupes d'utilisateurs avec ACL" ( http://www.formation-cakephp.com/32/gestion-des-droits-dacces-par-groupes-dutilisateurs-avec-acl ). Pour commencer est-ce un bon choix ? Voici l'organisation des tables que j'ai imaginé. --~--~---------~--~----~------------~-------~--~----~ Groupe "Cakephp-fr". Adresse : cakephp-fr@googlegroups.com Pour résilier : cakephp-fr-unsubscr...@googlegroups.com Pour les options : http://groups.google.com/group/cakephp-fr?hl=fr -~----------~----~----~----~------~----~------~--~---
<<inline: epi_db_auth.png>>
J'ai réussi à créer une authentification classique avec les utilisateurs et les groupes. Ce qui fonctionne pour les groupes d'accès à l'application (public, privée, administrative). Par contre, ensuite il faut que je trouve le moyen de gérer les groupes d'utilisateurs par rapport aux structures. En fait un utilisateur pourra pourra appartenir à plusieurs groupes : - 1 groupe de l'application (public, privée, administrative), - 0 à n groupes de structure. Sachant que les droits de ces groupes ne se croiseront jamais. Lors de l'utilisation de l'application, un utilisateur peut décider de travailler avec toutes les structures ou une seule. A ce moment, il faudra qu'on puisse connaître les droits de l'utilisateur pour la structure sélectionnée. Voilà c'est que j'imaginais. Je ne sais pas si c'est vraiment très clair. Est-ce réalisable ? Et comment ? Comment dois-je définir mes droits aux groupes ? Merci d'avance car sans cette partie mon application n'a plus lieu d'être. Ca me fait bizarre mais c'est vrai. vanitom