Bonjour,
voila j'ai souvent eu ce problème dans mes développements et j'aurais aimé avoir votre avis. (j'ai fait plusieurs recherches mais le mot clef droit est très utilisé)
Dans une application, il est classique d'avoir différents type d'utilisateurs :
- Administrateur
- Utilisateur avec droits particuliers sur l'application...
Dans mon cas, une personne n'a pas nécessairement un compte sur l'application.
Un compte a un seul rôle applicatif.
Donc la modélisation classique est simple :
Personne 0 1 ------------ 1 1 Compte 1 1 ------------- 0 N Role
Avec Compte(id, pseudo, mot_de_passe)
pour rôle je pensais mettre uniquement
Role (id, libellé)
ainsi dans cette table j'aurais :
1 Administrateur
2 Directeur de projet
3 Chef de projet
4 Responsable
5 Utilisateur (cad lambda)
Le problème au niveau applicatif est l'utilisation de cette table :
- faire un test sur les identifiants est une mauvaise idée car un rôle peut être ajouté ou supprimé
- faire un test sur le libellé est une mauvaise idée car celui ci peut changer
Je ne vois donc pas de solution propre pour dire que l'administrateur aura tous les droits, le directeur aura beaucoup de droit, etc.
Ma question est donc la suivante : comment effectuer une gestion propre des droits dans l'application ?
Merci par avance.
Partager