|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre du Club
![]() Inscription : novembre 2007 Messages : 757 ![]() |
Bonjour tout le monde, j'espere que je poste au bon endroit!
je viens de finir le front office de mon site web et me reste le back office. je me demandais quelle sera la meilleures maniere de gerer les droits d'acces au differentes pages de mon back office... Le front office contient 3 ou 4 pages où une authentification est exigée, cela ne pose aucun problème, c'est surtout au niveau du back office que j'aurais besoin de creer des permissions... j'ai fait des recherches sur le net mais la solution qui se repete a chaque fois et de creer un seul champ dans la table "clients" et lui donner une valeur "read", "write", "modify", ... mais je ne la trouve pas complete!! dois je creer une table "permissions" et y repertorier toutes les url de mes pages "admin" et puis dans ma table "clients" attribuer une valeur au client?? ou auriez vous une solution meilleure?? Merci beaucoup |
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() Olivier Développeur Web Inscription : août 2003 Messages : 1 837 ![]() |
Il existe plusieurs solutions ,
Les deux principales sont : - Le bit bashing qui consiste à donner une valeur à une action (par exemple ECRIRE_ARTICLE = 5 et d'associer aux utilisateur une valeur de droit qui englobe toutes les actions auquels ils ont accès. Voir ici par exemple : http://bravenewworld.fr/1507-gerer-s...t-bashing.html - Les gestion de ressources. Tu as une table ressources , une table users et une table users-ressources. Tu rentres dans ta table toutes les ressources (acces_admin,ecrire_article,modifier_article ... ) puis pour chaque utilisateur tu fais le lien entre son id et les id de ressources auquel il a accès. C'est dans le principe la même chose que précédemment mais gérer d'une manière différente. |
|
10
|
|
|
#3 |
|
Membre du Club
![]() Inscription : novembre 2007 Messages : 757 ![]() |
Bonjour Grunk, et merci pour ta reponse.
je n'ai pas recu une notification de reponse, c'est que par hasard que je consulte cette page... Merci pour le lien, je vais etudier la chose et te tiens informé. A tres vite |
|
|
00
|
|
|
#4 |
|
Membre du Club
![]() Inscription : novembre 2007 Messages : 757 ![]() |
j'ai bien lu le lien que tu m'as donné mais je t'avoue avoir un peu de mal a le comprendre!!
au fait, si par exemple je te donne un droit "MODIFIER_ARTICLE", comment pourrais je preciser que tu peux UNIQUEMENT modifier les articles de la categorie A mais pas des autres?? |
|
|
00
|
|
|
#5 |
|
Futur Membre du Club
![]() Inscription : avril 2010 Messages : 105 ![]() |
Slut,
si dans ton back office, toutes personnes connecté et identifié a le droit de faire tous, si en gros tout le monde est en "super utilisateur" tu peux mettre un fichier .htacess tout simplement, et les gens identifiés auront tous les droits. Moi perso je viens de faire un système plus fin. J'ai rentrer toutes les pages du back office dans une BDD. Ensuite, j'ai fait une page dans le back office pour que le super utilisateur puisse donner des droits à des nouvelles personnes. Il lui donne un login, un mot de passe, et par des checkbox, il choisit ou non de donner les droits d'accès à une page du back office ( toutes les pages étant listés). Tout ceci est alors stocké dans la BDD. On se retrouve donc avec dans la BDD une table contenant les logins , les mots de passe, et tous les identifiants des pages autorisé. Ensuite, au moment de la connexion au back office, on demande un login et un mdp. Si il est reconnu, tous les identifiants des pages autorisées sont passés en session. Ensuite une fonction "protect" qui se retrouve dans toutes les pages effectue un test pour savoir si l'identifiant de la page courante se retrouve dans les identifiants des pages passés en session. Si c'est le cas autorisée autrement rediriger.. Bon j'ai pas tout expliquer, mais le principe est là. |
|
|
00
|
|
|
#6 |
|
Membre du Club
![]() Inscription : novembre 2007 Messages : 757 ![]() |
OK, merci beaucoup, je vais voir ca de plus pret!!
Merci encore une fois |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com