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é] Problème de session


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 171
    Par défaut [Sécurité] Problème de session
    Je viens de lire un post plus bas au sujet des sessions et j'ai vu qu'il fallait mettre ce code pour verifier qu'une variable appartient bien à une session

    <?php
    if(isset($_SESSION["prenom"])) {
    echo "La variable prenom est déjà enregistrée !";
    } else {
    echo "La variable prenom n'est pas enregistrée !";
    // On est cerntain d'y avoir accès ici
    }
    ?>


    Mon problème est que j'ai mis une page de connexion avec un login et mot de passe et elle "protege" l'accès au site. Mais si je rentre directement la page dans la barre d'adresse je peux y accéder sans rentrer de login ni de mot de passe.

    Quel est la solution pour eviter ca ? Je dois rentrer le code ci dessus dans chaque page ?

    Merci d'avance pour votre aide ! ( Je ne connais pas grand chose sur les sessions, je viens juste de m'y mettre)

  2. #2
    Expert confirmé
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Par défaut


    oui le code que tu as mis doit être mis sur chaque page où tu as besoin de contrôler l'accès
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag :resolu: (en bas)

  3. #3
    Invité
    Invité(e)
    Par défaut
    si tu peux y rentrer sans te connecter c'est un pb de securité grave
    tu dois dans chacune de tes pages a securisé mettre un session_start en tout debut et verifié que ta valeur de session est bien renseigné
    par exemple si tu te connecte avec login et mdp et que tt est ok tu peux enregistré la la varible de session login comme suit $_SESSION['login'] = $login.

    puis dans chacune de tes pages tu fais
    if(!isset($_SESSION['login']) || $_SESSION['login']=="")
    {
    //traitement derreur,
    soit un header qui redirige
    soit un message derreur suivi d'un exit etc
    }

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 171
    Par défaut
    Merci beaucoup, c'est bien ce qu'il me semblait !

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 171
    Par défaut
    J'ai rentré ce code dans ma page haut.php ( elle est apellée dans chaque page du site par un require ) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <?
    session_start();
     
    if(!isset($_SESSION['login']))
    {
    	require("indexfaux.php");
    }
    ?>
    Donc maintenant il me met bien une erreur si je ne suis pas loggué et que j'essaye de passer directement par la barre d'adresse, mais il m'affiche tout de meme la page que je tape dans la barre en dessous de ma page indexfaux.php

    Cela peut venir d'ou ?

  6. #6
    Invité
    Invité(e)
    Par défaut
    c'est nomal car il execute ton if puis continue lexecution de la page
    soit tu fais un header vers la page derreur (header location)
    soit tu met un exit qui stop tout

    ma prefrence va au header

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 171
    Par défaut
    Comment ca un header ? Je pensais que le require vers ma page indexfaux.php suffirais a ne pas ouvrir la page demandée sans login et mot de passe.

    Ma page indexfaux correspond a la page d'identification avec un msg derreur de connexion.

    Qu'est ce que je dois rajouter dans le code pour que ca ne m'envoie que la page d'erreur et que ca bloque l'acces au site ?

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

Discussions similaires

  1. [Sécurité] problème déconnexion d'une session
    Par gazelle dans le forum Langage
    Réponses: 4
    Dernier message: 18/04/2007, 20h31
  2. Réponses: 2
    Dernier message: 08/01/2007, 21h46
  3. [Sécurité] Problème de sessions avec IE6
    Par TheMoutch dans le forum Langage
    Réponses: 8
    Dernier message: 21/08/2006, 18h52
  4. [Sécurité] Problème avec des variables de session
    Par zoom61 dans le forum Langage
    Réponses: 28
    Dernier message: 18/08/2006, 22h05
  5. [Sécurité] Problème de valeur de session
    Par navis84 dans le forum Langage
    Réponses: 19
    Dernier message: 22/06/2006, 11h48

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