Session securisée

rima -  
XecK Messages postés 405 Statut Membre -
Bonjour,

j'ai cree une session d'authentification , un utilsateur doit entrer et mot de passe pour ouvrir sa session, mais le probleme c'est que apres la deconnexion(je clique sur un lien deconnexion D'un session), peut un utilsateur copier la barre d'adresse et entrer facilement à la session sans securiter, sans authetification, qu'est ce que je peux faire pour securiser la session, merci d'avnce

1 réponse

  1. XecK Messages postés 405 Statut Membre 56
     
    Si j'ai bien compris, tu te connecte et ça te redirige vers certaines pages. Donc si un utilisateur connais leur url, il peut y accéder sans s'identifier.
    Tu crée une variable de session et définit une variable de session, que tu détruit quand tu te déconnecte :
    Connexion :
    session_start();
    $_SESSION['connecte'] = 'ok';

    Déconnexion :
    session_start();
    session_destroy();

    Sur toutes les pages :
    session_start();
    if ($_SESSION['connecte'] == 'ok') {
        //Ta page
    } else {
        //Message d'erreur
    }


    A priori cette solution est assez sécurisée.
    0
    1. rima
       
      merci XecK, mois j'ai crér deja une page deconnexion.php contient:
      <?php
      session_start();
      //SESSION_unset();
      session_destroy();
      header("Location: login.php");
      ?>
      est ce qu'il faut creer une autre page connexion.php?????????????
      0
    2. rima
       
      voici la code de la page principale, comment je peux la corriger: login.php

      <body>
      <form action="" method="post">
      <label>UserName :</label>
      <input type="text" name="username"/><br />
      <label>Password :</label>
      <input type="password" name="password"/><br/>
      <input type="submit" value=" VALIDER "/><br />
      </form>
      <?php
      include("config.php");
      session_start();
      $_SESSION['connecté']='ok';
      if($_SERVER["REQUEST_METHOD"] == "POST"){
      // username and password sent from Form

      $myusername=addslashes($_POST['username']);
      $mypassword=addslashes($_POST['password']);

      $sql="SELECT*FROM admin WHERE username='$myusername' and passcode='$mypassword' ";
      $result=mysql_query($sql);
      $row=mysql_fetch_array($result);
      $count=mysql_num_rows($result);
      $_SESSION['type']=$row['type'];
      $_SESSION['username']=$row['username'];

      if($count==1 && $_SESSION['type']=="administrateur" )
      {
      $_SESSION['username']=$myusername;
      header("location: page1.php");
      }
      if($count==1 && $_SESSION['type'] !="administrateur" )
      {
      $_SESSION['username']=$myusername;
      header("location: page1.php");
      }
      else
      {

      echo " Your Login Name or Password is invalid, Try again please";
      }
      }
      ?>
      et encore j'ai une page config.php , page deconnexion.php et page1.php et merci
      0
    3. XecK Messages postés 405 Statut Membre 56
       
      Rajoute :
      <?php
      if ($_SESSION['type']=="administrateur") { ?>
      //Contenu de la page
      <?php } ?>
      0