bonjour,
je dois ajouter a mon appli une gestion de droits d'utilisateurs (de l'appli) et je sais pas trop par ou prendre le probleme.
le but etant de permetter ou plutot d'interdire un utilisateur de l'appli tout ou partie des fiches / boutons selon les droits qui lui sont donnés. le tout en offrant une certaine souplesse a cette gestion des droits.
je pensais procéder ainsi:
ds ma table utilisateurs, je stock les droits dans un camp 'droits'
ds ma classe utilisateur j'ai un truc du style:
et pour verifier si le mec a le droit:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 TDroits = (dNone,dModifContrats,dSupprContrat ....); TDroitsUtilisateurs = set of TDroits; TUtilisateur = class ... private FDroits : TDroitsUtilisateurs; ... published property Droits : TDroitsUtilisateurs read FDroits right FDroits; ... end;
le soucis c'est que le fait d'ajouter une nouvelle fiche me forcera a ajouter un dDroitSurlanouvellefiche (par exemple) ce qui est pas tres pratique de mon pts de vue.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 ... if dModifContrat in Utilisateur.Droits then //ok il a le droit else //non il a pas le droit ...
(surtout que j'ai pas mal de fiches / boutons un peu partout donc c'est pas super pour maintenir tt ça)
idem pour la fiche d'attribution des droits, si j'ajoute un nouveau droit faudrais que la modif se repercute dynamiquement
(voir si je peut ajouter un commentaire a chaque valeur du Type TDrois pour le texte associé, je sais que c'est possible en c# par contre en delphi j'en sai rien)
donc voila
si vous avez des idées, des suggestions, elles sont les bienvenues.
(ou avez vous meme mis en place une gestion de droits ds vos applis)
merci d'avance
Elrick.
ps: question bonus, comment on stock une variable de type 'Set of' ds un champ de base de donnée (access) ?
Partager