Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Salut à vous,
Je cherche comment configurer la durée pendant laquelle une authentification reste en session. J'imagine que ça doit pouvoir se faire directement avec Zend_Auth.
Si vous avez une idée pour configurer ça, merci de me donner un tuyau.
++
Hors ligne
c'est un paramètre php qui défini la durée de la session
session expire je crois
Hors ligne
Re,
Merci pour vos réponses.
D'après ce que vous dites, je présume que l'on peut passer directement un objet Zend_Session_Namespace en paramètre à
$s = new Zend_Session_Namespace('authNS'); $s->setExpirationSeconds(60); $auth = Zend_Auth::getInstance(); $auth->setStorage($s);
à la place de l'objet Zend_Auth_Storage_Session
$auth = Zend_Auth::getInstance(); $auth->setStorage(new Zend_Auth_Storage_Session('someNamespace'));
Je vais tester ça, j'espère que ça peut marcher ainsi et qu'il ne faut pas rajouter une couche supplémentaire.
Au passage je remercie sekaijin pour les quelques bons tutos que tu as publié et tes réflexions sur ZF.
++
Hors ligne
Alors voici la solution finale.
Ma proposition du dernier post ne fonctionne pas, malheureusement il faut gérer à part la durée de vie du namespace de la session de l'authentification (d'après mes tests). On doit donc utiliser la méthode setExpirationSeconds sur un une instance de la classe Zend_Session_Namespace. Ainsi on fixe la durée de la session d'authentification en secondes.
Ce qui me chagrine c'est qu'il y a de la répétition de namespace avec cette technique.
Si quelqu'un à mieux (sans encore étendre une classe de ZF) merci de faire passer l'info.
$auth = Zend_Auth::getInstance(); $auth->setStorage(new Zend_Auth_Storage_Session('someNamespace')); $ns = new Zend_Session_Namespace('someNamespace'); $ns->setExpirationSeconds(30);
A +
Hors ligne
Non je n'ai pas testé. Mais pourquoi faire ? C'est juste la validité d'un namespace en session que je veux limiter dans la temps et non toute la session.
Pourquoi veux tu que j'utilise cette méthode à la place de setExpirationSeconds() ? Quels avantages ?
Hors ligne
Pages: 1