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

Symfony PHP Discussion :

Partage de session entre deux applications [2.x]


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 54
    Par défaut Partage de session entre deux applications
    Bonjour,

    Pour le besoin d'un projet, je souhaiterais partager une session entre deux applications.
    Ces deux applications vont partager quelques données en base et le switch de l'une vers l'autre devrait se faire de manière transparente, c'est-à-dire sans reconnexion.
    Faire une seule application serait très (trop) lourd, certains n'ayant accès qu'à une des deux (avec des droits limités à l'intérieur), certains objets étant relativement différents. La première application n'étant pas documentée (elle n'est pas de moi), le risque est très grand.

    Savez-vous comment faire pour partager une session de manière transparente ?

    Merci de votre aide

  2. #2
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Août 2012
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2012
    Messages : 98
    Par défaut
    C'est pas possible directement en PHP pure, je m'explique:
    Tes objets ne vivent que la durée de l'execution d'un script, après ils sont détruits, et construits si besoin.
    En revanche ce qui est possible c'est de mettre en place une communication ( je te conseille vivement un webservice REST ) entre les deux applications.

    Certains bundles vont t'aider FosRestBundle, JSMserializer.

    C'est pas mal de boulot, mais je ne vois pas comment faire sinon.

    Une solution simple, c'est de connecter les deux applis à la meme base de donnés...

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 54
    Par défaut
    Ah non, je me suis mal exprimé.
    Je voulais parler d'une session utilisateur, c'est-à-dire passer d'une application à l'autre sans avoir à se (re)connecter.
    Avoir comme Google par exemple : on peut passer de GMail à Drive sans avoir à se reconnecter.

    La base sera bien partagée oui. Pour le reste (les objets etc.), cela n'est pas utile.

  4. #4
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Août 2012
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2012
    Messages : 98
    Par défaut
    C'est une mauvaise pratique de partager une session, tu crée du couplage, tes applications ne sont plus indépendantes, tu dois vérifier les donnés issues de la session avant de les utiliser, le risque de conflit est important, tu vas vite bourrer tes session, mais si tu y tiens vraiment c'est possible, tes sesssions sont stockés au niveau serveur, c'est "indépentant" de PHP, toutes les applications sur le meme serveur ont accès aux sessions sur le serveur.

    Google/Gmail/autre services google te demandes tous de te connecter la premiere fois, et stockent un cookie encrypté qui sert à la connexion.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 54
    Par défaut
    Je n'y tiens pas vraiment personnellement mais on m'a demandé de ne surtout pas avoir à se reconnecter...
    Je pourrais tout faire dans la même application mais j'ai peur des impacts, l'application de base est lourde et mal codée (du genre à être passée par deux frameworks différents)...

    Bon, je vais voir.
    Mais au cas où, pour le cookie, il me suffit de spécifier à mes applications symfony d'utiliser tel cookie (le même) ?

  6. #6
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Août 2012
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2012
    Messages : 98
    Par défaut
    Oui c'est le concept, mais niveau sécurité, c'est tendu...
    Je te relance sur la BDD pourquoi si les deux appli partagent la meme bdd, ne pas juste permettre aux users de se conncter la premiere fois, et un "remember me" assez large derriere ?

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

Discussions similaires

  1. [PHP 5.4] Partage session entre deux domaines - Memcache
    Par Vrugar dans le forum Langage
    Réponses: 0
    Dernier message: 20/09/2013, 12h19
  2. Réponses: 4
    Dernier message: 02/11/2011, 09h43
  3. Partage de préférences entre deux applications
    Par nicroman dans le forum Android
    Réponses: 13
    Dernier message: 17/08/2011, 21h29
  4. Réponses: 0
    Dernier message: 07/07/2011, 14h12
  5. Transmission de sessions entre deux applications tomcat
    Par nicorama dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 09/12/2007, 13h56

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