IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Zend_Acl & Zend_Auth PHP Discussion :

Zend_Acl comment commencer


Sujet :

Zend_Acl & Zend_Auth PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de yosraisi
    Inscrit en
    Février 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 136
    Par défaut Zend_Acl comment commencer
    bonjour

    j'ai terminer le tutoriel Zend_Ath et je commence Zend_ACl mon problème que je n'est pas compris comment procéder avec le tutoriel
    http://alain-sahli.developpez.com/tu...framework/acl/
    j'ai créer mon arborescences suivant la structure conventionnelle
    donc je viens de commencer la création de mes fichiers mais j'ai pas compris comment m' organiser.

    aidez moi SVPL

  2. #2
    Membre Expert Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Par défaut
    Commence par lire le manuel et dis nous ce que tu ne comprends pas.
    Zend_Acl
    Zend_Auth

  3. #3
    Membre confirmé Avatar de yosraisi
    Inscrit en
    Février 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 136
    Par défaut
    salut
    j'ai lu ce manuel et j'ai compris comment créer un liste de contrôle d'accès ainsi de définir les rôles mais par exemple j'ai fais le tutoriel de l'album pour le premier tutoriel de développer comment je peux appliquer Zend_acl sur cet exemple et attribuer par exemple des droits de suppression et de modification et de lecture des albums ??

    ou je met mon code ??

  4. #4
    Membre confirmé Avatar de yosraisi
    Inscrit en
    Février 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 136
    Par défaut
    bon j'ai commencer à écrire ma page qui MyAcl qui contient la classe qui définie et joute les rôles et les ressources
    elle se situe dans ZENDDD\Application

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    <?php
     
    require_once'Zend_Acl';
     
    class MyAcl extends Zend_Acl
    {
        public function __construct(Zend_Auth $auth)
        {
            parent::__construct();
     
            $roleGuest = new Zend_Acl_Role('guest');
     
            $this->add(new Zend_Acl_Resource('supprimer'));
            $this->add(new Zend_Acl_Resource('creer'));
            $this->add(new Zend_Acl_Resource('modifier'));
            $this->add(new Zend_Acl_Resource('consulter'));
     
            $this->addRole(new Zend_Acl_Role('invite')); 
     
            $this->addRole(new Zend_Acl_Role('admin'), 'member');
     
            // Les invités peuvent uniquement voir le contenu
            $this->allow(''inviter'', 'consulter');
     
            $this->allow('admin'); // Accès sans aucune restriction
     
              }
    }

  5. #5
    Membre confirmé Avatar de yosraisi
    Inscrit en
    Février 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 136
    Par défaut
    ensuite j'ai ajouter ce code dans library/Zend/My/Plugin/auth.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    class My_Plugin_Auth extends Zend_Controller_Plugin_Abstract
    {
        private $_auth;
        private $_acl;
     
        private $_noauth = array('module' => 'default',
                                 'controller' => 'login',
                                 'action' => 'index');
     
        private $_noacl = array('module' => 'default',
                                'controller' => 'error',
                                'action' => 'privileges');
     
        public function __construct($auth, $acl)
        {
            $this->_auth = $auth;
            $this->_acl = $acl;
        }
     
    public function preDispatch($request)
    {
            if ($this->_auth->hasIdentity()) {
                $role = $this->_auth->getIdentity()->getUser()->role;
            } else {
                $role = 'guest';
            }
     
        $controller = $request->controller;
        $action = $request->action;
        $module = $request->module;
    $resource = $controller;
     
        if (!$this->_acl->has($resource)) {
            $resource = null;
        }
     
            if (!$this->_acl->isAllowed($role, $resource, $action)) {
                if (!$this->_auth->hasIdentity()) {
                    $module = $this->_noauth['module'];
                    $controller = $this->_noauth['controller'];
                    $action = $this->_noauth['action'];

  6. #6
    Membre confirmé Avatar de yosraisi
    Inscrit en
    Février 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 136
    Par défaut
    salut

    je suis perdue je ne sais pas comment commencer avec Zend_Acl voici mon arborssance

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    /application
     
               /controllers
                  /AuthControllers
                 /IndexControllers
     
            /views
     
                /index
                     /_form.phtml
                    /ajouter.phtml
                   /supprimer.phtml
                  /modifier.phtml
     
              /scripts
                /auth
                    /login.phtml
     
     
           /models 
     
               /Album.php
    je veux utiliser zend_Acl pour qu'un utilisateur a le rôle invite juste il consulter la liste d'album et si il a le rôle administrateur gere la modification et la suppression et l'ajout d'album .

    j'ai lu les tutoriels mais je n'est pas compris comment organiser ou comment mettre mes fichier qui contient la classe MyAcl dans mon arborescence



    une question est ce que je dois creer une 2 tables dans ma base qui contient les roles et les ressources???
    j'ai besion de qu'elcun qui me guide

    merci de m'aider

Discussions similaires

  1. Coder son pathdinfing : comment commencer ???
    Par Invité dans le forum Algorithmes et structures de données
    Réponses: 5
    Dernier message: 09/01/2006, 09h38
  2. [debutant] Comment commencer avec Perl?
    Par Murieyaya dans le forum Langage
    Réponses: 3
    Dernier message: 20/12/2005, 15h58
  3. Comment commencer ?
    Par cyrill.gremaud dans le forum Interfaces Graphiques en Java
    Réponses: 14
    Dernier message: 25/11/2005, 15h04
  4. [Wamp] Comment commencer ?
    Par mencaglia dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 5
    Dernier message: 11/11/2005, 18h34
  5. [JEU]Comment commencer
    Par mavina dans le forum Général Java
    Réponses: 7
    Dernier message: 04/11/2005, 08h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo