Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Voilà tout est dans le titre.
Je remet dans le contexte vite fait car je n'ai malheureusement pas trop de temps devant moi.
J'utilise sur mon site Zend_Auth et les Acls mais là question n'est pas vraiment là.
J'ai un site avec domaine.fr, et domaine.me
Le .me, c'est pour faire des pages persos style "user.domaine.me"
Mais le soucis c'est que si je me loge sur un domaine, je ne suis pas logé sur l'autre à cause des cookies et leurs limitations cross-domaines
Donc j'ai pensé faire un script bête avec le PHPSESSID dans une url.
Pour une histoire de style je ne peux pas me permettre de garder le sessionid dans l'url sinon les adresses en .me perde tout leur style...
Exemple de solution de porc:
Sur la page domaine.com, je met "<img src="http://domaine.me?PHPSESSID) />" mais cette solution est complètement craignosse niveau sécurité elle a donc dessuite était oubliée (ou pas??).
SI j'ai bien compris je dois faire un système Single Sing On, via un truc du genre OpendId
Malheureusement pour moi je n'ai que très peu de temps et c'est donc pour cette raison que je fais appelle à vos expériences passés pour résoudre ce soucis au plus vite et le plsu simplement possible
- Dois faire une système de script et de redirection complexe pour arriver à mes fins avec des clés et tout un merdier que je n'imagine pas?
Histoire que sur les 2 noms de domaines j'ai la même session active niveau serveur (car les 2 domaines sont exactement sur le même serveur, en effet le .me c'est pour le style!)
- Où puis-je mettre en place un stystème rapide via un truc à la OpendId?
Je vais voir de ce pas OpendId en attendant d'y voir plus claire!
Hors ligne
Hum... j'ai tendance à penser que t'as un gros problème :
- tu as effectivement besoin d'un SSO ou d'une solution maison, mais dans les deux cas, c'est complexe à faire
- les outils de SSO traditionnels sont des usines à gaz complexes (et souvent chères)
- si tu improvises en 2j un SSO maison, tu peux être à peu près sur qu'il y aura des trous de sécu énormes
- si tu veux utiliser openId mais si tu veux que ça soit transparent pour tes internautes, tu devra créer ton propre serveur openId, créer des entrées sur ce serveur quand l'internaute crée un compte. C'est faisable, mais ça fait du boulot... (déjà il faut bien comprendre openId, ce qui ne se fait pas en 1h )
J'ai tendance à penser que si tes délais sont courts, tu devrais proposer à ton client/patron de tout laisser sur le même domaine avec des URL du genre :
www.domaine.fr pour le site principal et toto.domaine.fr pour ton user toto...
J'espère que je ne t'ai pas trop cassé le moral,
A+, Philippe
Hors ligne
Je m'en doutais...
Va falloir trancher...
Le truc qu'est bête c'est que tout est sur la même machine, y'a juste le nom de domaine qui change...
Vraiment c'est qu'on qu'un ne puisse pas faire doublé les cookies pour passer le PHPSESSID...
Je vous tiens au jus.
Hors ligne
Y'a Nexen qui vient de signaler un nouveau tutoriel openId. C'est en anglais, mais ça a l'air d'expliquer pas mal pas à pas comment ça marche (d'après ma lecture très en diagonal).
http://www.nexen.net/actualites/tutoria … ec_php.php
A+, Philippe
Hors ligne
Je ne sais pas sur quel type de site tu travailles, mais moi, j'ai qqchose de similaire (mais surement une utilisation différente)
En fait, j'ai un domaine 'générique' qui sert pour les 'super admins'. Ils peuvent manipuler tous les xxx.me à travers domaine.fr
Mes clients ont accès uniquement a leur xx.me
Lorsque qu'une personne se logue sur domaine.fr, j'ai 2 possibilités :
- se logué avec @xxx.me (donc, je me logue comme si j'étais sur xx.me)
- se logué sans rien (juste le pseudo)
Quand on se logue sans rien, plusieurs possibilité :
Il existe plusieurs compte avec le même non d'utilisateur :
- La page de logue se réaffiche en demandant de se loguer en @xxx.me
Il n'existe qu'un compte : la session est créé comme s'il était connecté sur son domaine, mais le site (et les cookies) travaille toujours sur domaine.fr
Pour ceux qui ont les droits, on peut changer de domaine en court de session. C'est juste un transfert d'acls.
Il y a une clé en session qui indique sur quel domaine la personne est identifié.
J'ai une acl qui est la racine de toutes les acls qui indique si un compte peut être identifié sur un domaine ou non.
En fait, avoir xxx.me est une option de confort pour nos clients.
Ll'identification sur domaine.fr est virtuel puisque les infos de sessions sont des infos d'un domaine xxx.me
Je sais pas si j'ai été clair
bon courage
Hors ligne
T'as des SSO open source basés sur Apache (reverse proxy) PHP et Perl, qui fonctionnent très bien.
Par exemple http://vulture.open-source.fr/
Hors ligne
Bon faute de temps je vais m'en passé pour le moment.
Par la suite je regarderais SSO et/ou OpendId (je dis ca je sais pas vraiment encore de quoi je parle ^^)
Pour l'instant le .me sera une vielle redirection
Hors ligne
j'ai à peu près le même problème, sauf que pour moi cela se passe au niveau des sous domaines.
En gros l'utilisateur X se connecte sur fr.mondomaine.com et je souhaite via les sessions qu'il soit également reconnu sur en.mondomaine.com. De la même façon que si il se déloggue cela lui supprimera les sessions d'authentification sur tous les sous domaines.
Pensez vous qu'il y a une solution plus simple à ce pb ? (car la on ne parle pas de gestion des sessions entre différents domaines mais de sous domaines ) ...
Hors ligne
Pour les sous domaines, faut voir avec les cookies et mettre pour chemin / et le nom de domaine ".nom.ext" (notez le point au début!!)
Extrait de la doc (http://www.php.net/setcookie):
Le domaine où le cookie est disponible. Pour rendre le cookie disponible sur tous les sous-domaines de example.com, vous devez mettre la valeur '.example.com'. Le point (.) n'est pas requis mais est nécessaire pour la compatibilité avec encore plus de navigateurs. Positionnez le à www.example.com rendra le cookie disponible uniquement sur le sous-domaine www. Reportez-vous aux » spécifications pour plus de détails.
Hors ligne
Ce qui donne ça avec Zend_Session :
Zend_Session::setOptions(array('cookie_path'=>'/', 'cookie_domain'=>'.mondomaine.com')); Zend_Session::start();
Hors ligne
effectivement ça a l air de marcher .
merci
Hors ligne
Pages: 1