Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 26-06-2008 10:13:57

neojick
Membre
Date d'inscription: 13-04-2008
Messages: 223
Site web

Deux authentifications distinctes

Bonjour, petit soucis sur mon appli, j'ai cherché une équivalence sur ce forum, sans succès.

J'ai une appli avec une partie admin pour gérer le contenu, et une partie publique où les visiteurs "membres" peuvent se logguer. Je veux simplement créer des authentifications différentes.
Les admins et les users sont enregistrées dans des tables différentes.

Etes-il possible, lors d'une identification et d'une création de session, de spécifier que "celle là est pour la partie publique", et "celle là pour la partie privée" ?

Merci d'avance.


Chan IRC de ZF en français : zftalk-fr

Hors ligne

 

#2 26-06-2008 11:04:26

stf
Membre
Date d'inscription: 03-04-2008
Messages: 156

Re: Deux authentifications distinctes

Il me semble qu'avec le Zend_Auth, tu peut spécifier où tu veux stocker l'identification,

Je me rapelle qu'on peut définir le NameSpace à utiliser, apres on peut peut etre organiser ca dans un seul namespace, se serait plus propre

Hors ligne

 

#3 26-06-2008 12:11:50

whitespirit
Membre
Date d'inscription: 25-01-2008
Messages: 393

Re: Deux authentifications distinctes

La question serait plus quand et comment choisir la base de données ou le type d'utilisateur doit se connecter ? Selon moi tu n'as pas besoin de 2 Zend_Auth puisque ton utilisateur aura qu'une authentification à la fois. Je suis en train de mettre en place un système d'authentification sur 3 base de données distinctes depuis la même page avec un seul Zend_Auth et ça n'a pas l'air de poser problème. C'est au niveau du login que je détermine en amont  sur quelle bd se connecter, une fois fait, je créé les instances de Zend_Auth/Acl/etc.

Peut-être ce qui te bloque est que ton bootstrap est un fichier ou tu charges tout ? Moi j'ai un fichier qui charge une classe contenant que des méthodes d'initialisations static. Du coup, je peux exécuter de n'importe l'initialisation dun élément.

Bon courage.

Hors ligne

 

#4 30-06-2008 15:28:42

neojick
Membre
Date d'inscription: 13-04-2008
Messages: 223
Site web

Re: Deux authentifications distinctes

Je n'ai peut-être pas été clair.

J'ai une identification pour la partie backoffice du site, identification réservée à l'admin, et une identification pour les visiteurs "enregistrés". Je veux, bien entendu, qu'un visiteur enregistré (et connecté) n'ai pas accès à l'admin du site.

Mon code ci-dessous fonctionne s'il n'y a qu'une seule identification, mais comment spécifier d'autoriser la navigation ? Faut bien que je distingue mes deux types d'utilisateurs ?

Code:

        $auth = Zend_Auth::getInstance();
        if (!$auth->hasIdentity()) {
            
            $this->_redirect('admin/login');
        }

Chan IRC de ZF en français : zftalk-fr

Hors ligne

 

#5 28-07-2008 01:03:04

slaughter
Membre
Date d'inscription: 01-04-2008
Messages: 217

Re: Deux authentifications distinctes

La classe Zend_Auth inclut un singleton. Tu ne peux donc pas avoir plusieurs instances disponibles en même temps. Dans ton cas, je pense qu'il faut que tu regardes du coté de Zend_Acl.

Hors ligne

 

#6 28-07-2008 09:47:19

nORKy
Membre
Date d'inscription: 06-03-2008
Messages: 1098

Re: Deux authentifications distinctes

L'utilisateur 'identifier' étant le même qu'il soit admin ou non, je rejoins ce que dit slaughter.
Il faut gerer un type d'utiliser. (avec ou sans ACL)


----
Gruiiik !

Hors ligne

 

#7 28-07-2008 16:55:36

mikaelkael
Administrateur
Lieu: Donges
Date d'inscription: 18-06-2007
Messages: 1176
Site web

Re: Deux authentifications distinctes

Hello,

Je rejoins la position de nORKy, il faut passer par les ACLs. Mais voici le bout de code recherché par stf.
Tu fais dans le bootstrap de l'application 1:

Code:

Zend_Auth::getInstance()->setStorage(new Zend_Auth_Storage_Session('appli1'));

et dans celui de l'application 2 :

Code:

Zend_Auth::getInstance()->setStorage(new Zend_Auth_Storage_Session('appli2'));

A+


Less code = less bugs
Contributeur ZF - ZCE - ZFCE - Doc ZF (CHM & PDF) - Vice-trésorier AFUP 2011
Ubuntu 11.04 - ZendServer

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