[PHP] Gérer des niveaux d'accès

fissunix

Membre actif
12 Avril 2004
290
17
40
Fribourg (CH)
www.contesse.ch
Hello,

Je cherche un moyen "propre" pour gérer des niveaux d'accès différents pour un Intranet (Service info, service qualité, utilisateurs). Je voudrais avoir des groupes et des utilisateurs (stockés dans une base MySQL) avec des droits sur des fonctionnalités sur des pages. J'ai cherché et trouvé cet article.

Est-ce qu'il y a moyen de faire du "bit bashing" en stockant des valeurs binaires dans un base MySQL. Est-ce que vous avez des exemples ?

Merci.
 
Le plus simple et le plus portable consiste à utilisé openLdap.
l s'agit en fait d'un annuaire qui peut controler de surcroit les mots de passe.
En plus ce qui est super c'est qu'il est possible d'initilaiser une connexion avec cet annuaire; donc ton bonheur .
Pour cela il faut compiler ton php avec une option que j'ai oublié mais que tu trouveras facilement dans la doc Php .

tu peux restreindre les accès suivant la personne qui interroge Ldap, Vas faire un tour sur comment ca marche pour avoir plus d'info.
 
Je ne pense pas que je puisse utiliser OpenLDAP dans mon cas... par contre avec la classe LiveUser de PEAR, il y a peut-être moyen. Mais est-ce que quelqu'un sait où se trouve le fichier "php.ini" sur Mac OS X ? Il faut apparament modifier l'include_path pour que PEAR fonctionne ? Quelqu'un à des infos ? Merci. A+
 
iMatthieu a dit:
Hello,

Chez moi php.ini se trouve sous /etc/php.ini

J'utilise un package d'entropy mais je pense que c'est sa place habituelle

Merci, je vais télécharger le package d'entropy, c'est l'occasion de mettre PHP à jour (4.3.2 -> 4.3.6) même s'il n'y a pas énormément de différences.

Est-ce que tu utilises PEAR (DB, Mail, Auth, LiveUser ...) ? Est-ce que c'est difficile à utiliser ?
 
Tu veux pas php5 ?

Non désolé je connais pas du tout pear...

Pour ton histoire d'accès, moi je ferai quelque chose du genre une base mysql pour les user/password avec un champ qui contient les accès (genre : admin, user, ...).. et j'utiliserais les sessions pour garder en mémoire l'utilisateur connecté ainsi que les accès qui lui sont attribués...

Ensuite c'est tout con :

if ($_SESSION['access'] == "admin") {
//Page admin
}
elseif ($_SESSION['access'] == "user") {
//Page utilisateur
}
else {
echo "Vous n'avez pas les acces necessaires";
}