Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 09-10-2009 22:52:21

Wawan
Membre
Date d'inscription: 09-10-2009
Messages: 14

[Zend_Session][1.8]Communication entre Zend framework et forum phpbb

Bonjour,

Je suis en train de réaliser un site avec le framework Zend framework et j'aimerai mettre en place un forum, phpbb en l'occurrence.

Je recherche le plus d'information possible pour permettre au deux systèmes de dialoguer entre eux.

J'utilise les Zend_Session, mais je voudrai savoir si on pouvait partager les sessions entre le forum ou le site ? Ou si une application externe le permettait ?

Dernière modification par Wawan (10-10-2009 12:54:35)

Hors ligne

 

#2 06-12-2009 00:06:38

nicol@s
Membre
Lieu: Nantes
Date d'inscription: 22-06-2009
Messages: 18
Site web

Re: [Zend_Session][1.8]Communication entre Zend framework et forum phpbb

Zend_Session utilise $_SESSION donc amha potentiellement oui, que veux tu partager entre le site et le forum ?

Car, par exemple, si c'est pour que l'utilisateur ne s'authentifie qu'une fois, tu peux te renseigner sur le SSO (Single Sign-On), voir http://fr.wikipedia.org/wiki/Authentification_unique

Hors ligne

 

#3 06-12-2009 11:09:31

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: [Zend_Session][1.8]Communication entre Zend framework et forum phpbb

si ton phpBB et ton appli ZF son sur le même serveur avec même nom dns (dans des dossiers différents) alors tu n'as qu'une seule session entre les deux

il te faut lorsque tu fais l'auth dans ZF ajouter dans la session les informations telles que les attend phpBB mais ce n'est pas tout car il me semble que phpBB met aussi quelque chose en base au moment du login.

dans l'autre sens lorsque ton utilisateur se connecte par phpBB il te faut mettre dans la session ce que ton appli ZF attend

dans un sens comme dans l'autre il te faut bien maîtriser la façon dont les deux application gèrent l'auth.  car il te faut modifier les deux procédures de login pour inclure dans chacune ce que fait l'autre.

si tu es sur le même serveur avec deux nom dns différents tu as deux sessions pour un seul utilisateur. dans ce cas il te faut modifier les méthodes de login pour échanger entre application les informations de connexion. via par exemple un espace disque partagé (attention à la sécurité)

si tu es sur deux serveurs sur le même principe tu peux échanger des information mais cette fois en RPC SOAP ou tout autre connexion entre appli.

dans tout les cas il faut aussi penser au logout et défaire ce qu'on a fait.

le SSO est un moyen bien pratique d'y parvenir mais si tu est sur la même machine et que tu n'as que phpBB et une appli ZF c'est peut-être un peu lourd.

par contre si tu pense par la suite ajouter d'autres appli ou un jour les mettre sur plusieurs serveur alors il faut l'envisager sérieusement.

le principe : un serveur d'auth qui contient login et logout (plus gestion du MdP) éventuellement une page donnant la liste des application accessible par l'utilisateur

sur les applications l'arrivé sur l'appli ou le clic sur login renvois vers la page d'auth du serveur sso une fois logué on reviens sur l'application. idem pour le logout

les application dans leur procédure de sécurité demande au serveur d'auth si l'utilisateur est logué si oui elle récupère les infos de sécurité sinon elle renvois vers le login.

souvent le serveur d'auth renfois aussi les info de profil (profils centralisés souvent utilisé en entreprises => profils partagé entre applications)

pour parvenir à ça il faut que toutes les applications soient dans un même domaine dns général (avec des noms dns ou des sous domaines différents)
lors de l'auth sur le sso celui-ci place une cookie dans le domaine de base

lorsque une application demande si l'utilisateur est connu elle récupère le cookie,  l'IP de l'utilisateur et les utilise pour interroger le SSO.

enfin une solution consiste à utiliser NTLM c'est une technique propre à windows mais que l'ont peut utiliser sur tout système. il fonctionne avec un challenge entre les machines. l'avantage pas de SSO à installer mais il faut se méfier des proxys. l'avantage de cette solution c'est que l'utilisateur n'a pas à saisir de login password c'est son login de session linux/windows/macos ... qui est utilisé.

l'application reçois une demande d'url et regarde si l'utilisateur est connu si ce n'est le cas elle lance le challenge NTLM le client le résout et si le challenge est réussi il envoie son nom de login. le serveur s'en sert pour authentifier l'utilisateur.

enfin attention OpenID et consort ne sont pas des systèmes d'authentification mais des systèmes d'identification en clair il véhicule une identité sans garantir leur authenticité.

A+JYT

Hors ligne

 

#4 06-12-2009 21:11:31

nicol@s
Membre
Lieu: Nantes
Date d'inscription: 22-06-2009
Messages: 18
Site web

Re: [Zend_Session][1.8]Communication entre Zend framework et forum phpbb

Jolie réponse et présentation de l'état de l'art sur ce problème récurrent de la communication entre applications, on en apprend tous les jours big_smile

A+
Nicolas

Hors ligne

 

#5 07-06-2010 17:19:33

epasquier
Membre
Date d'inscription: 12-01-2009
Messages: 15

Re: [Zend_Session][1.8]Communication entre Zend framework et forum phpbb

Bonjour,
Je suis en train de voir à faire la même chose, intégrer phpbb avec un site Zend framework que je développe, et j'aurais bien aimer avoir votre retour d'expérience, sur ce qu'il faut éviter ou ce que vous me conseillez de faire.

Par exemple, je n'ai jusqu'ici jamais eu besoin d'avoir recours à la notion de module (module/controller/action), juste (controller/action). Faut-il justement commencer par isoler phpbb dans un module ?
Comment avez-vous résolu le login commun phpbb et Appli ?

Par avance, merci.
Eric.

Hors ligne

 

#6 11-06-2010 22:38:11

nick
Membre
Date d'inscription: 31-05-2008
Messages: 84

Re: [Zend_Session][1.8]Communication entre Zend framework et forum phpbb

A mon avis :
ton PHPBB doit être installé dans ton répertoire "public/". Par exemple "public/forum/"
Dans ton vhost ou .htaccess, il faut que tu crées une exception pour que les requêtes type "/forum.*" ne soit pas routées vers ton index.php

Hors ligne

 

#7 13-06-2010 03:55:31

epasquier
Membre
Date d'inscription: 12-01-2009
Messages: 15

Re: [Zend_Session][1.8]Communication entre Zend framework et forum phpbb

Merci d votre réponse.
J'envisafe de créee un exeception en plaçant le forum carrément dans un répertoire à part, /forum, avec en plus la possibilité de faire une "authentification" commune entre la partie applicative et le forum.

eric

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages