Vous êtes ici Codes PHP et MySQL > Sessions > Proteger vos sessions contre le vole

 

Proteger vos sessions contre le vole

Proteger vos sessions contre le vole
 
PHP Sources
Code vu 9946 fois
Enregistré le 24 Nov 2005
  • Digg ce code sur digg.com
  • Bookmark ce code sur del.icio.us
  • Bookmark ce code sur Google
  • Bookmark ce code sur Yahoo
  • Ajoute Proteger vos sessions contre le vole
  • Partage ce code sur Facebook
 
 
 
 

Code Source


01.
02.
03.
04.
05.
06.
07.
08.
09.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
 
<?php
/******************************************************************************/
/*                                                                            */
/*                       __        ____                                       */
/*                 ___  / /  ___  / __/__  __ _____________ ___               */
/*                / _ \/ _ \/ _ \_\ \/ _ \/ // / __/ __/ -_|_-<               */
/*               / .__/_//_/ .__/___/\___/\_,_/_/  \__/\__/___/               */
/*              /_/       /_/                                                 */
/*                                                                            */
/*                                                                            */
/******************************************************************************/
/*                                                                            */
/* Titre          : Proteger vos sessions contre le vole                      */
/*                                                                            */
/* URL            : http://www.phpsources.org/scripts146-PHP.htm              */
/* Auteur         : PHP Sources                                               */
/* Date édition   : 24 Nov 2005                                               */
/*                                                                            */
/******************************************************************************/
 

$ip = !empty( $_SERVER['HTTP_X_FORWARDED_FOR'] ) ? $_SERVER[
'HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR']; 
$securite $ip $_SERVER['HTTP_USER_AGENT'];
if( empty( $_SESSION ) ) { 
    session_start();
    $_SESSION['securite'] = $securite;
} elseif( $_SESSION['securite'] != $securite ) {
    session_regenerate_id(); 
    $_SESSION = array(); 
} 
?> 

 

Fonctions du code

: Détermine si une variable contient une valeur non nulle - (PHP 4, PHP 5)
: Initialise une session - (PHP 4, PHP 5)
: - (PHP 4 >= 4.3.2, PHP 5)
: Crée un tableau - (PHP 4, PHP 5)
Commentaires
Super mais 2 petites remarques :

- Il y a une erreur de logique ds ton code, il faut placer la commande "session_start" dans le test "if (empty..), sinon la session est régénéréé systématiquement, ce qui n'est pas l'effet escompté.

- je crois que la syntaxe $_SESSION['securite'] !== $securite est incorrecte et présente une redondance, à remplacer par $_SESSION['securite'] != $securite
 
manque une accolade
 
non désolé j'ai rien dit no
 
Voici la même en fonction

Code:
function security()
{
$ip = !empty( $_SERVER['HTTP_X_FORWARDED_FOR'] ) ? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR'];

$securite = $ip.'_'.$_SERVER['HTTP_USER_AGENT'];

if(empty($_SESSION))
{
session_start();
$_SESSION['securite'] = $securite;
}
elseif($_SESSION['securite'] != $securite)
{
session_regenerate_id();
$_SESSION = array();
}
}

 
merci
 
Ajouter un commentaire
Code de sécurité

Attention: Les champs marqués d'une étoile * sont obligatoires
 
Librairie PHP

Connexion

 
 

Sessions

 
 

PHP

 
 
 
 
    Offres d'emploi

Plus de 500 offres d'emploi PHP/MySQL

Offres d'emploi
 
    Editeur PHP
 
        Publicité