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é] quitter une session et ne pas y revenir....


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2005
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 12
    Points : 12
    Points
    12
    Par défaut [Sécurité] quitter une session et ne pas y revenir....
    bonjour,
    je réalise actuellement un site d'interrogation d'une base de données mysql. La visibilité des informations étant variable selon le profil de utilisateur je procède à une identification pour initialiser des variables de session correspondant aux droits de l'utilisateur selon son login et son mot de passe.
    je veux que l'utilisateur puisse "quitter" le site. J'ai donc créé un lien "quitter" qui pointe sur la page d'identification, page dont le code est sensé détruire la session :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <?php
    session_start();
    session_destroy();
    ?>
    Ce qui me chagrine c'est que si après déconnexion et retour sur la page d'identification, l'utilisateur utilise la fonction back de son navigateur il se retrouve sur le site avec les mêmes droit qu'auparavant sans avoir à retaper son login et son mot de passe...

    quelqu'un voit il un moyen de procéder pour pallier à cette possibilité ??

  2. #2
    Membre expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 851
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 851
    Points : 3 481
    Points
    3 481
    Par défaut
    En fait en faisant back dans le navigateur, tu tombes sur les pages en cache. Donc une solution serait de faire ton controle _après_ chaque action ( par exemple dans la page qui effectue l'action de supprimer un enregistrement ) ou bien de préciser que tes pages ne doivent pas rester en cache, en utilisant les bons paramètres liés à la gestion du cache :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    // HTTP/1.1
    header("Cache-Control: no-store, no-cache, must-revalidate");
    header("Cache-Control: post-check=0, pre-check=0", false);
     
    // HTTP/1.0
    header("Pragma: no-cache");
    K

  3. #3
    Membre à l'essai
    Inscrit en
    Juin 2005
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 12
    Points : 12
    Points
    12
    Par défaut
    ok merci je vais essayé de paramétrer la gestion du cache alors

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

Discussions similaires

  1. Une session ne veut pas s'enregistrer
    Par chok371 dans le forum Langage
    Réponses: 1
    Dernier message: 29/09/2011, 18h00
  2. Réponses: 6
    Dernier message: 06/06/2008, 14h09
  3. Detecter le statut d'une session (commit ou pas)
    Par Loko dans le forum Oracle
    Réponses: 7
    Dernier message: 15/12/2004, 10h28
  4. Quitter une application FLASH ?
    Par jeje.r dans le forum Flash
    Réponses: 3
    Dernier message: 25/02/2003, 14h57

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