|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre du Club
![]() Inscription : octobre 2005 Messages : 248 ![]() |
Bonjour à tous!
Ma question se porte sur quelque chose d'assez général. Je crée un intranet (qui fait aussi office d'extranet) en PHP et j'utilise une base MySQL de EasyPHP et j'ai donc plusieurs TYPES d'utilisateurs : admin, userA, userB, userC, userD... Chacun de ces types ont des droits différents et se logge avec un pseudo et un mot de passe. J'ai commencé par la partie administrateur (je ne sais pas si j'ai bien fait) qui a tous les droits (créer, modifer, supprimer des tables). Les types d'utilisateurs UserA, B, C, etc. ont des droits restreints sur la base, différents les uns des autres. En fait ils peuvent voir certaines pages de l'intranet, et ont des droits limités sur celles-ci. J'aurais trois questions : - Comment faire l'aiguillage des utilisateur à la connection? - Pour les pages affichés, vaudrait-il mieux que je refasse chaque page pour chaque type d'utilisateur, ou bien je garde la même page et que je fasse des test à chaque fois pour savoir si telle ou telle partie sera visible, ou bien tel ou tel bouton sera disponible? - Pour la sécurité, comment gérer cela? C'est assez généraliste comme question, mais il existe des tas d'intranet, donc je suppose qu'on ne réinvente pas la roue à chaque fois... Donc quelle est la démarche type pour ce genre de situation? Merci à vous |
|
|
00
|
|
|
#2 |
|
Membre émérite
![]() |
A la connection tu mets le niveau de sécurité/D'accès de l'utilisateur (suivant comment tu l'as défini : texte, chiffre etc.) dans une variable de session.
Ensuite suivant cette session tu génères un menu qui ne contiendra que les pages associées au niveau de sécurité, et pour renforcer le tout (au cas ou des petits malins connaitraient le nom des pages) sur chaque page tu commences par une fonction qui redirige ailleurs si le niveau de sécurité de la page qu'il cherche à afficher est inférieur à celui dans la session. J'espére avoir été assez clair et que ça te permettra de commencer à mettre en place ton système
__________________
Le . est la base de toute bonne concaténation, marre de voir des echo "Mavar1 = $toto et Mavar2 = $titi"; ou pire echo 'Mavar1 = ',$toto,' et Mavar2 = ',$titi; pratiquez plutôt le echo 'Mavar1 = '.$toto.' et Mavar2 = '.$titi; |
|
|
00
|
|
|
#3 |
|
Membre du Club
![]() Inscription : octobre 2005 Messages : 248 ![]() |
Oki d'acki, j'ai saisi l'algo
Par contre le truc c'est que l'admin voit les mêmes pages que des utilisateurs normaux, mais avec des droits différents sur cette page. Ex : le bouton "modifier table" ne sera visible que par l'admin, etc. Alors à votre avis (je m'adresse à tout le monde) est ce qu'il faut que je crée plusieurs version d'une même page (une pour l'admin où il y aura le bouton "modifier table" et une pour le simple utilisateur sans ledit bouton) ou bien une seule page mais en faisant un test pour l'affichage du bouton ou non. Sachant qu'il y a des TAS de différences, donc un test à chaque fois c'est pas terrible non plus, et que c'est pas très sécurisant (il suffit que le test foire pour X raison...) |
|
|
00
|
|
|
#4 | ||
|
Membre émérite
![]() |
Si vraiment les différences sont énooooooormes entre les pages à la limite fait 1 page par type d'utilisateur mais tu vas en ch*** si tu dois modifier 15 fois tel bout de texte ou tel autre truc en dur sur chaque page.
Si j'étais toi je ferai une petit fonction toute bête (jte file l'algo) Code :
Code :
si verif_droit(admin,visiteur) afficher bouton_admin sinon afficher bouton_visiteur
__________________
Le . est la base de toute bonne concaténation, marre de voir des echo "Mavar1 = $toto et Mavar2 = $titi"; ou pire echo 'Mavar1 = ',$toto,' et Mavar2 = ',$titi; pratiquez plutôt le echo 'Mavar1 = '.$toto.' et Mavar2 = '.$titi; |
||
|
|
00
|
|
|
#5 |
|
Membre du Club
![]() Inscription : octobre 2005 Messages : 248 ![]() |
Oki d'ack
|
|
|
00
|
|
|
#6 |
|
Membre émérite
![]() |
De rien
__________________
Le . est la base de toute bonne concaténation, marre de voir des echo "Mavar1 = $toto et Mavar2 = $titi"; ou pire echo 'Mavar1 = ',$toto,' et Mavar2 = ',$titi; pratiquez plutôt le echo 'Mavar1 = '.$toto.' et Mavar2 = '.$titi; |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com