|
Pages: [1]
|
 |
|
Auteur
|
Sujet: différencier la protection, ou protéger un dossier (Lu 771 fois)
|
bmcf
Newbie
Karma : +0/-0
Hors ligne
Messages: 8
|
Bonjour,
Authentification-Redirection fonctionne parfaitement pour autoriser tous les membres à voir toutes les pages définies comme protégées.
Je voudrais monter d'un cran, et définir dans le même espace des [b]niveaux d'autorisation différents[/b]. (par ex. membre1 est autorisé à voir les pages classées A et B, mais membre2 n'est autorisé que pour B). Est-ce que quelqu'un peut me donner une idée ?
Autre souci : je voudrais protéger un blog WordPress dans un espace membre... mais j'ai l'impression que les Sessions se mélangent les doigts. Est-ce que quelqu'un a déja essayé un truc comme ça ? J'imaginais protéger uniquement les index du blog, mais cela ne fonctionne pas, la session espace membre se perd et il faut reloguer.
Ces deux questions m'amenent à chercher un contournement : est-ce que je dois insister avec Authentification-Redirection ou ferai-je mieux de trouver un script plus spécifiquement destiné à protéger des dossiers, dans leur intégralité. (si ça existe, dans le genre htaccess mais automatisé)
Si quelqu'un a une idée, il sera le bienvenu !!
|
|
|
|
« Dernière édition: 17 Juin 2007 à 03:35:13 par bmcf »
|
Journalisée
|
|
|
|
jeune
Webmestre junior

Karma : +1/-0
Hors ligne
Messages: 23
|
Bonjour, A oui ! Effectivement un petit trou de sécurité sur les pages de redirection. J’ai une solution à moindre frais qui pourrait peut-être t’intéresser. Partant du principe que la page de redirection est la page de référence autorisée pour le membre, on crée alors une condition. Si la page demandée ne correspond pas à la page de redirection inscrite dans la fiche du membre, alors par ici la sortie. Les pages ne peuvent être visionnés que si le membre a passé avec succès son identification. Bien sûre il faudra placer sur toutes les pages qui seront liées à la page de référence, le code de protection adapté. Voilà une idée ! Sans doute que notre créateur Paul-Admin aurait mieux fait, mais il doit être très occupé pour l’instant, car plus de nouvelle.
A+
[color=Red]En rouge les lignes ajoutées.[/color] [b]4 lignes (Dans les pages de redirection) Par Exemple la page (destination1.php)[/b] ------------------------------------------------------------------------------------------------------------ // sessions [color=Red]session_start(); // ICI[/color] [color=Red]if ($_SESSION["desti"]=="destination1.php") // ICI avec le nom de la page[/color] [color=Red]{ // ICI[/color] if($active_session=="1") { session_start(); $id=addslashes($_SESSION["id"]); $url="../protec/delogue.php"; } else { $id=addslashes($_GET["id"]); $url="../protec/delogue.php?id=".$id; } [color=Red]} // ICI[/color] // fin sessions ------------------------------------------------------------------------------------------------------------
[b]2 lignes dans le fichier (login.php)[/b] ------------------------------------------------------------------------------------------------------------ if($row["droits"]==1 || $_POST["modif_infos"]==1) { if($active_session=="1") { session_start(); $_SESSION["id"] = $lid; [color=Red]$_SESSION["desti"] = $destination; // ICI[/color] header("Location: $destination"); } else { header("Location: $destination?id=$lid"); } } else { if($active_session=="1") { session_start(); $_SESSION["id"] = $lid; [color=Red]$_SESSION["desti"] = $destination; // ICI[/color] header("Location: destination/$destination"); } else { header("Location: destination/$destination?id=$lid"); } } ------------------------------------------------------------------------------------------------------------
[color=Blue][b]Ne pas oublier de copier le fichier (erreur.php) dans le répertoire Destination.[/b][/color]
|
|
|
|
|
Journalisée
|
|
|
|
bmcf
Newbie
Karma : +0/-0
Hors ligne
Messages: 8
|
Bonjour,
merci, mais NON, il ne s'agit pas d'un trou de sécurité. Je crois que Paul nous propose de personaliser la redirection, sans plus. (ceci sans critique aucune)
Cela dit, ta solution est très sympa pour limiter l'accès par niveau, et je pense que je vais l'utiliser pour certains cas de figure (acces à une age d'infos sensibles par exemple)
Par contre, pour une navigation à plusieurs niveaux, j'adapterais plutot ta proposition aux 'droits' : definir le niveau de l'utilisateur (actellement 0, et 1 pour l'admin) - definir le niveau mini exigé pour chaque page - verifier que le visiteur a le niveau suffisant
Qu'en dis-tu ?
|
|
|
|
|
Journalisée
|
|
|
|
jeune
Webmestre junior

Karma : +1/-0
Hors ligne
Messages: 23
|
Bonjour, Très bonne idée. Il faudra alors modifier la saisi de la fiche du membre avec les choix du style : 0 -Tous accès (sauf Admin) 1 - Admin 2 - 2eme niveaux 3 - 3eme niveaux etc... A+
|
|
|
|
|
Journalisée
|
|
|
|
|
Paul-Admin
|
Salut !
je vois que ça reflechit dur pendant que je me paie des vacances ;)
Effectivement, le script dans son etat actuel permet des redirections protégées mais sans aucun autre niveau hierarchique. Actuellement c'est admin ou user.
On peut envisager : 0 : user normal (niveau 0) 1 : user niveau 1 (regroupe niveau 0 et niveau 1) 2 : user niveau 2 (regroupe niveau 0 + niveau 1 + niveau 2)
L'information figurerait sur la table membre. Dans les pages de destination, on mettrai juste : $page_niv = 2; (pour une page de niveau 2) puis on adapterait la requete d'authentification pour qu'elle prenne en compte le niveau de la page.
Dans la page login.php : on va ramener le niveau assigné à l'user et le stocker en session pour pouvoir l'utiliser dans la requete d'authentification cité ci-dessus.
Bref, c'est une bonne idée pour le prochain update du script, que je vais essayer de faire tres prochainement.
Je vous tiens au courant et bravo pour les idées.
@+
Paul
|
|
|
|
|
Journalisée
|
http://www.scriptsgratuits.com http://www.apreslamort.net http://www.vol-de-quad.com
|
|
|
|
|
Pages: [1]
|
|
|
 |