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

Utiliser une base de données pour sécuriser vos sessions

Utiliser une base de données pour sécuriser vos sessions


précédentsommairesuivant

3. La base de données

3.1. Table 'site_session'

Explication des champs :
  • champ sid : contient l'id de session pour la session en cours
  • champ userid : contient l'id de l'utilisateur (cet id est lié à la table 'site_user')
  • champ last_modified : est mis à jour automatiquement dés qu'il y a une modification (création) de la ligne dans la table
  • champ ip : contient l'ip de l'utilisateur (peut servir pour des mesures de sécurité pour tester si l'utilisateur est toujours le même; pas toujours très fiable)
  • champ browser : contient le nom du navigateur de l'utilisateur (peut aussi servir pour des mesures de sécurité; un utilisateur ne changera pas de navigateur entre 2 pages du site)

Le champ ip et browser sont cités à titre indicatifs.

Champ Type Attribut Défaut
sid text    
userid mediumint(9)    
last_modified timestamp ON UPDATE CURRENT_TIMESTAMP CURRENT_TIMESTAMP
ip varchar(15)    
browser varchar(50)    
Code SQL de la table
Sélectionnez
CREATE TABLE `site_session` (
  `sid` text NOT NULL,
  `userid` mediumint(9) NOT NULL,
  `last_modified` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
  `ip` varchar(15) NOT NULL,
  `browser` varchar(50) NOT NULL
)

3.2. Table 'site_user'

Champ Type Attribut Extra
id mediumint(9) UNSIGNED auto_increment
username varchar(50)    
password varchar(32)    
... ...    
Code SQL de la table
Sélectionnez
CREATE TABLE `site_user` (
  `id` mediumint(9) unsigned NOT NULL auto_increment,
  `active` text NOT NULL,
  `date` datetime NOT NULL,
  `last_modified` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
  `username` varchar(50) NOT NULL,
  `password` varchar(32) NOT NULL,
  `email` varchar(100) NOT NULL,
  `country` varchar(50) NOT NULL,
  `gender` varchar(1) NOT NULL,
  `birthday` date NOT NULL,
  `avatar` varchar(255) NOT NULL,
  PRIMARY KEY  (`id`)
)

précédentsommairesuivant

Copyright © 2006 Adrien Pellegrini. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.