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 :

Variable de session court et long terme en même temps. [PHP 5.3]


Sujet :

Langage PHP

  1. #1
    Membre expérimenté
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Points : 1 341
    Points
    1 341
    Par défaut Variable de session court et long terme en même temps.
    Bonjour,

    Alors voila, j'ai actuellement un système de session qui fonctionne parfaitement, les données de la session courante se gardent jusqu'à la fermeture du navigateur.

    Cependant, il y a quelques données (et seulement quelques unes, c'est là le hic) que j'aimerai garder au delà. (Typiquement, je veux sauvegarder le fait qu'un utilisateur ne retape pas son mot de passe à chaque connexion, mais les données liées à sa navigation courante n'ont pas de raison de rester stockées au-delà de la navigation en question).

    Est-il possible d'avoir deux systèmes de sessions qui tournent en paralelle pour, suivant la méthode que j'appele, stocker ma variable le temps d'une navigation ou un temps défini (x jours) ?

    Si ce n'est pas possible, qu'ai-je comme autre choix ?

    Merci d'avance !
    Rakken

    Oneira, un monde imaginaire d'Heroic Fantasy.

    Parce que la présomption d'innocence est un des fondements de notre pays et qu'elle doit le rester, dans tous les domaines : http://www.laquadrature.net/

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 104
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 104
    Points : 8 224
    Points
    8 224
    Billets dans le blog
    17
    Par défaut
    En somme tu veux un auto-login.
    Pourquoi ne pas procéder simplement avec un cookie contenant l'id utilisateur et son mdp chiffré ?

    Ainsi quand un internaute visite la page :
    1. Internaute déjà authentifié ?
    2. Si non alors cookie présent ?
    3. Si oui alors couple id/mdp correct ?
    4. Si oui lancement de la procédure de connexion et de la session
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  3. #3
    Membre expérimenté
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Points : 1 341
    Points
    1 341
    Par défaut
    Hummm... Est-ce que c'est assez sur comme méthode ? L'intérêt de la session est qu'il n'y a aucune donnée "sensible" chez l'utilisateur, et là, la plus sensible, son mot de passe, se retrouve 'accessible' (même chiffré, on peut prendre le cookie tel quel et s'en servir pour aller sur le site).

    D'un autre coté, j'imagine que c'est un peu pareil avec une vraie session...
    Et ta méthode à l'avantage d'être assez simple à mettre en place.

    Après, il est sans doute possible aussi de faire l'inverse... Mettre le mot de passe en session, et utiliser les cookies pour toutes les données de navigations, qui ne sont globalement pas là que pour le confort de l'utilisateur.
    Rakken

    Oneira, un monde imaginaire d'Heroic Fantasy.

    Parce que la présomption d'innocence est un des fondements de notre pays et qu'elle doit le rester, dans tous les domaines : http://www.laquadrature.net/

  4. #4
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 104
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 104
    Points : 8 224
    Points
    8 224
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par Rakken Voir le message
    Hummm... Est-ce que c'est assez sur comme méthode ?
    Outre les habituelles possibilités d'interceptions de données il y a toujours le risque de vol de cookie. Je n'emploierai jamais cette méthode pour un accès à des données sensibles.

    L'intérêt de la session est qu'il n'y a aucune donnée "sensible" chez l'utilisateur, et là, la plus sensible, son mot de passe, se retrouve 'accessible' (même chiffré, on peut prendre le cookie tel quel et s'en servir pour aller sur le site).
    Idem pour une session : tu peux te faire voler le cookie de session.

    D'un autre coté, j'imagine que c'est un peu pareil avec une vraie session...
    Et ta méthode à l'avantage d'être assez simple à mettre en place.
    Tu me voles les mots de la bouche

    Après, il est sans doute possible aussi de faire l'inverse... Mettre le mot de passe en session, et utiliser les cookies pour toutes les données de navigations, qui ne sont globalement là que pour le confort de l'utilisateur.
    Hum je ne vois pas trop le truc là.
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  5. #5
    Membre expérimenté
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Points : 1 341
    Points
    1 341
    Par défaut
    Après, il est sans doute possible aussi de faire l'inverse... Mettre le mot de passe en session, et utiliser les cookies pour toutes les données de navigations, qui ne sont globalement là que pour le confort de l'utilisateur.
    L'idée était de mettre le mot de passe en session avec une durée de vie longue, et de mettre toutes les autres données dont j'ai besoin en cookie à durée de vie "navigateur" comme ça, le mot de passe n'est jamais stocké chez l'utilisateur, seulement des données avec peu de valeur, du genre quel page il était entrain de voir, ou quels menus il avait choisi d'afficher ou pas.

    Je n'emploierai jamais cette méthode pour un accès à des données sensibles.
    Et quelle méthode emploierais-tu pour éviter un relogguage à chaque fois ?
    Rakken

    Oneira, un monde imaginaire d'Heroic Fantasy.

    Parce que la présomption d'innocence est un des fondements de notre pays et qu'elle doit le rester, dans tous les domaines : http://www.laquadrature.net/

  6. #6
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 104
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 104
    Points : 8 224
    Points
    8 224
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par Rakken Voir le message
    L'idée était de mettre le mot de passe en session avec une durée de vie longue
    Mais pourquoi mettre le mdp en session ?

    et de mettre toutes les autres données dont j'ai besoin en cookie à durée de vie "navigateur"
    Durée de vie navigateur = tu veux dire qui expire à la fermeture du navigateur ?
    Si oui je ne vois pas l'intérêt comparé à une session.

    comme ça, le mot de passe n'est jamais stocké chez l'utilisateur
    Faut voir aussi que quelqu'un voulant absolument pirater le compte et ayant accès au réseau pourra le faire d'une manière ou d'une autre.

    seulement des données avec peu de valeur, du genre quel page il était entrain de voir, ou quels menus il avait choisi d'afficher ou pas.
    Ah moi j'aurai mis ce genre d'infos en bdd dans le profil de l'utilisateur.

    Et quelle méthode emploierais-tu pour éviter un reloggage à chaque fois ?
    Aucune, je laisserai l'utilisateur gérer ça avec son navigateur
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  7. #7
    Membre expérimenté
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Points : 1 341
    Points
    1 341
    Par défaut
    Finalement, je laisse un cookie avec une durée de vie longtemps qui contient le login et le mdp crytpté sur le pc de l'utilisateur, comme ca, le site pourra le reconnecter automatiquement.
    Pourquoi stocker le mdp ? Parce que si je stocke juste le fait que l'user est authentifié, s'il change de mot de passe depuis un poste, il me faut un moyen de déterminer qu'il doit se relogguer aussi depuis les autres posts.

    J'ai conscience que ce n'est pas le plus ultimement sécure, mais dans la mesure ou il n'y a aucune donnée "financière", je pense que ca reste correct.
    Rakken

    Oneira, un monde imaginaire d'Heroic Fantasy.

    Parce que la présomption d'innocence est un des fondements de notre pays et qu'elle doit le rester, dans tous les domaines : http://www.laquadrature.net/

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

Discussions similaires

  1. Stockage de variable à long terme
    Par Arislas dans le forum Général Java
    Réponses: 8
    Dernier message: 11/05/2015, 11h11
  2. Réponses: 2
    Dernier message: 09/09/2008, 17h14
  3. [TControl] Récupérer le message court et long du hint ?
    Par Cornell dans le forum Composants VCL
    Réponses: 6
    Dernier message: 19/11/2003, 08h55
  4. variable de session
    Par divableue dans le forum ASP
    Réponses: 2
    Dernier message: 23/10/2003, 16h04

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