IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Sécurité] authentification http et sous repertoires


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2006
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 24
    Points : 17
    Points
    17
    Par défaut [Sécurité] authentification http et sous repertoires
    Bonjour,

    Pour restreindre l'accès à une interface d'administration, j'utilse une authentification HTTP via (.htaccess).
    voici le code d'authentification:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    <?
    $auth = false; // On initialise $auth comme fausse
     
    if (isset( $_SERVER['PHP_AUTH_USER'] ) && isset($_SERVER['PHP_AUTH_PW']))
    {   $filename = "./pass/.htpasswd";
     
        $fp = fopen( $filename, 'r' );
        $file_contents = fread( $fp, filesize( $filename ) );
        fclose( $fp );
        $lines = explode ( "\n", $file_contents );
        foreach ( $lines as $line ) {
        list( $username, $password ) = explode( ':', $line );
        if ( ( $username == $_SERVER['PHP_AUTH_USER'] ) &&
             ( $password == $_SERVER['PHP_AUTH_PW']) ) {
               $auth = true;
                break; }}
    }
     
    if ( ! $auth )
    {header( 'WWW-Authenticate: Basic realm="Restricted Zone"' );
     header( 'HTTP/1.0 401 Unauthorized' );
     echo 'Accès restreind';
     exit;} 
     
    ?>
    Le fichier (index.php) est dans un repertoire (./admin/) avec plusieurs fichiers et sous repertoires.

    Ainsi, si je vais sur www.monsiteweb.com/monscript/admin/index.php ---> j'ai bien la fenetre d'authentification demandant le login/pwd.
    Fine !! supper !!

    Mon probleme est que si je vais sur www.monsiteweb.com/monscript/admin/panier.php ou sur
    http://www.monsiteweb.com/monscript/...tos/photo1.jpg .... ====> point de demande de login/pwd.

    Alors question : comment faire pour que l'authentification soit "etendue" a tous les fichiers et sous repertoires du repertoire admin ?


    par avance merci,


    Francis

  2. #2
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Il s'agit d'une commande dans le fichier htaccess :
    http://cchatelain.developpez.com/art...ache/htaccess/

    Peut-être serait-il nécessaire de nous montrer son code...
    De retour parmis vous après 10 ans!!

  3. #3
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Ta façon de faire consiste à envoyer au client les entêtes adéquates, par l'intermédiaire du code PHP contenu dans une page. Ainsi, ce mécanisme ne concerne que les pages PHP qui contiennent ce code.
    Pour étendre l'authentification à tout un dossier, on place un fichier .htaccess et .htpasswd dans le dossier en question. Ainsi, tu laisses le serveur intercepter les requêtes clientes et retourner automatiquement les entêtes adéquates.
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  4. #4
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Ça marche !
    De retour parmis vous après 10 ans!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 19/02/2008, 14h46
  2. [FLASH MX2004] Classes dans sous-répertoires
    Par tomperso dans le forum Flash
    Réponses: 4
    Dernier message: 31/08/2006, 23h13
  3. Scan d'un repertoire et sous repertoires
    Par Malone dans le forum Langage
    Réponses: 6
    Dernier message: 08/08/2005, 13h03
  4. Compter le nombre de sous-repertoires
    Par n00bi dans le forum Langage
    Réponses: 3
    Dernier message: 16/07/2004, 12h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo