dolibarr-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Dolibarr-dev] [Fwd: [Dolibarr-cvs] dolibarr/htdocs/comm propal.php]


From: Laurent Destailleur (Eldy)
Subject: Re: [Dolibarr-dev] [Fwd: [Dolibarr-cvs] dolibarr/htdocs/comm propal.php]
Date: Thu, 25 Jan 2007 22:23:40 +0100
User-agent: Thunderbird 1.5.0.9 (Windows/20061207)

Franky Van Liedekerke a écrit :
On Wed, 24 Jan 2007 19:38:54 +0100
"Laurent Destailleur (Eldy)" <address@hidden> wrote:

J'ai de plus revu un peu différemment ta modif Rodolphe pour les
raison suivantes:
Par principe les tests de sécurité doivent selon moi etre fait
toujours au debut. Toutes les pages php font cela au debut dans la
section qui a le commentaire
// Sécurité accés client


Rodolphe avait raison, pas moi:

if (!$user->rights->commercial->client->voir && $user->societe_id > 0
&& $propal->socid <> $user->societe_id)
   accessforbidden();

==> cela ne controle plus l'access pour des utilisateurs non lies (et
c'est pas le correcte "rights" utilise).
Tout dépend de l'interprétation que l'on a du droit du module commercial "Voir tous les clients". Pour clarifier les choses, voici une mise au point sur la vocation de ce droit. C'est une règle métier qui découle de l'analyse du code donc j'imagine que c'est ce qui est voulu par Régis :

***** Regle sur droits "Voir tous les clients" *****
REM: Pour un exemple, voir la page societe.php dans le mode liste.
Utilisateur interne socid=0 + Droits voir tous clients => Voit toute société Utilisateur interne socid=0 + Pas de droits voir tous clients => Ne voit que les sociétés où il est liée comme commercial Utilisateur externe socid=x + Droits voir tous clients => Ne voit que lui meme Utilisateur externe socid=x + Pas de droits voir tous clients => Ne voit que lui meme

Je modifie donc le libellé du droit "Voir tous les clients" par le libellé "Voir tous les clients (effectifs pour utilisateurs internes uniquement)" et modifie le code en conséquence pour que ce soit toujours la meme regle appliquée.

alors, cela devrait etre:

if (!$user->rights->propale->lire)
   accessforbidden();
if ($user->societe_id >0 && $user->societe_id!=$propal->socid)
   accessforbidden();


De nouveau: il ya encore des places ou qq chose comme ca doit etre mis
en place (voir autre mail).

Franky


_______________________________________________
Dolibarr-dev mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/dolibarr-dev



--
Laurent Destailleur.
---------------------------------------------------------------
EMail: address@hidden
Web: http://www.destailleur.fr
IM: IRC=Eldy, Jabber=Eldy

AWStats (Author) : http://awstats.sourceforge.net
CVSChangeLogBuilder (Author) : http://cvschangelogb.sourceforge.net
AWBot (Author) : http://awbot.sourceforge.net
Dolibarr (Contributor) : http://www.dolibarr.org





reply via email to

[Prev in Thread] Current Thread [Next in Thread]