J'utilise Zend_Auth
pour valider les informations d'identification de l'utilisateur et rencontré un problème. Je dois avoir une identité à deux colonnes. Les deux colonnes sont le nom d'utilisateur et l'identifiant du client. Le paramètre identityColumn
et setIdentity()
ne permettent pas ce scénario. J'ai essayé d'accomplir cela en utilisant le paramètre credentialTreatment
, mais lorsque j'ai un nom d'utilisateur en double pour deux clients ou plus, il calcule simplement le zend_auth_credential_match
comme faux pour les autres clients plutôt que de filtrer ces utilisateurs.Zend Auth avec deux colonnes d'identité
Voici un aseptisé exemple de la requête résultante exécutée par Zend Auth:
SELECT `users`.*,
(CASE
WHEN `password` = 'password'
AND active = 1
AND customer_id = 1
THEN 1
ELSE 0
END) AS `zend_auth_credential_match`
FROM `users`
WHERE (`username` = 'username')
Est-il nécessaire d'étendre le module Zend_Auth
de le faire? Quelqu'un d'autre l'a-t-il fait et peut-il donner un exemple?
Merci!
C'est beaucoup plus simple que mon idée d'étendre le 'Zend_Auth_Adapter_DbTable' pour accueillir plusieurs colonnes d'identité. Test maintenant ... fonctionne! – Sonny