Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 18-07-2007 11:25:02

manuv
Membre
Date d'inscription: 13-07-2007
Messages: 12

[Résolu][Zend_auth][1.0.0] Plusieurs paramètres dans identity

Bonjour,

L'authentification dans mon application se fait par comptes PostgreSQL. Chaque utilisateur de l'application possède un compte postgreSQL, et le test d'authentification est ok si la connexion s'établit. Ceci rajoute un niveau de sécurité pour les attaques par injection lors de l'authentification (selon un responsable sécurité ... ;-)

Mon souci est le suivant : Zend_auth propose d'enregistrer l'identifiant de manière transparente dans une variable session (très bien), mais je souhaiterais enregistrer à la fois l'identifiant ET le mot de passe dans le paramètre identity de mon objet Zend_auth. J'ai pensé à créer un tableau qui ressemble à ceci (la syntaxe peut ne pas être correcte, ne retenir que le principe) :

public function authenticate() {
...
$authResult = array(
'code' => ...
'identity' => array('id' => $monId , 'passwd' => $monPasswd) ,
'messages' => ...
...
}

En faisant ceci, lors de la récupération de l'identité par getIdentity(), je ne récupère rien.
J'avais vérifié que le type de 'identity' est 'mixed', et je pensais qu'on pouvait donc y passer un tableau en argument... Ou alors ma démarche est correcte et j'ai omis quelque chose (on ne peut peut-être pas passer de tableau en argument d'une variable session) ?
Je suis preneur de toute proposition, même si je trouverais fastidieux d'avoir à étendre la classe Zend_auth pour si peu... J'ai également pensé à la solution 'identity' => $monId.";".$monPasswd, mais cette époque de PHP est révolue pour moi !!! (à moins que...) ;-)

Dernière modification par manuv (20-07-2007 10:18:48)

Hors ligne

 

#2 18-07-2007 15:44:44

philippe
Administrateur
Lieu: Grenoble
Date d'inscription: 01-03-2007
Messages: 1624

Re: [Résolu][Zend_auth][1.0.0] Plusieurs paramètres dans identity

Bonjour,

ça m'étonne que ça ne fonctionne pas. Moi je mets un objet dans identity et ça marche nickel (par contre il faut charger la classe de l'objet avant la récupération de la session).
la variable renvoyée par mon adapteur est la suivante, avec $member qui est un objet.

Code:

$res = new Zend_Auth_Result(
    Zend_Auth_Result::SUCCESS,
    $member,
    array()
);

A+, Philippe


twitter : @plv ; kitpages.fr : Création de sites internet à Grenoble et Paris

Hors ligne

 

#3 20-07-2007 10:14:37

manuv
Membre
Date d'inscription: 13-07-2007
Messages: 12

Re: [Résolu][Zend_auth][1.0.0] Plusieurs paramètres dans identity

En effet, en passant en argument un objet, ça fonctionne parfaitement !
Merci du tuyau !
En revanche, pourquoi un tableau de tableau ne fonctionne pas ? Peut-être le mécanisme passe-t-il une référence en argument à Zend_session au lieu des données du tableau ?

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