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

Symfony PHP Discussion :

sfDoctrineGuardplugin credentials dynamique


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2010
    Messages
    80
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 80
    Par défaut sfDoctrineGuardplugin credentials dynamique
    Bonjour,

    J'utilise sur un projet, le plugin sfGuardDoctrinePlugin pour gerer mes utilisateurs et surtout pour sécuriser mes modules à l'aide des permissions et des credentials.
    voila mon problème, j'aimerais pouvoir ajouter des permissions et donner des credentials dynamiquement sans passer par le fichier security.yml à un module que j'aurais choisis; à l'aide d'une interface admin,
    Comment faire ?
    Merci.

  2. #2
    Membre éprouvé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2011
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2011
    Messages : 124
    Par défaut
    Si j'ai bien compris tu veux une interface web pour gérer les permissions, les groupes et les utilisateurs ?
    Si oui, tu regarde dans le README du plugin et il t'explique comment activer les modules sfGuardUser, sfGuardGroup et sfGuardPermission.

    Sinon, j'ai pas compris la question

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2010
    Messages
    80
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 80
    Par défaut
    en fait pour donner des permissions en un groupe d'utilisateur sur un module.je dois faire ceci dans security.yml
    default:
    is_secure: true
    credential: permission A

    en fait je voudrais ne pas avoir à venir dans mon code pour donner cette permission à ce module. Est ce que ca peut être géré dynamiquement à partir d'une interface user (admin).

  4. #4
    Membre éprouvé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2011
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2011
    Messages : 124
    Par défaut
    Ah d'accord.
    Je ne sais pas si c'est réalisable, je peux pas t'aider.

  5. #5
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    sfDoctrineGuardPlugins utilise un objet qui hérite de sfSecurityUser.

    C'est là que les credentiels sont géré pour symfony (même si sfDGP les stocks dans un ensemble de table).

    Il existe une commande de l'objet user qui permet de savoir si l'utilisateur à un droit en particulier, la commande hasCredential().

    On peut donc envisager avant une action une commande du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    // code non testé
    $this->foward404until($this->getUser()->hasCredential('MonDroitAMoi'));
    qui vas vérifier que l'utilisateur a le droit "MonDroitAMoi" et si non envoie sur la page 404 (d'autres actions sont possibles).

    Il est aussi possible d'utiliser les méthode preExecute() a définir dans le module action.class.php du module qui permettent de donner des droits pour toutes les actions d'un module.

    A partir de là, on peut broder un peu comme on veut.

    ATTENTION ! Le super utilisateur retourne toujours vrai à la méthode hasCredential(), même si il n'a pas le droit. Ceci peut poser un problème dans le cas d'un test par la négative dans le genre "tel groupe n'a pas accès à". Dans ce cas, un super utilisateur "n'aura jamais accès à".

Discussions similaires

  1. Réponses: 0
    Dernier message: 26/10/2010, 18h15
  2. [1.x] Credential dynamique (owner)
    Par jeronimo83 dans le forum Symfony
    Réponses: 2
    Dernier message: 03/12/2009, 10h48
  3. comment creer un alias dynamique avec BDE et ODBC
    Par david33 dans le forum C++Builder
    Réponses: 2
    Dernier message: 12/07/2002, 11h50
  4. Réponses: 4
    Dernier message: 13/05/2002, 16h43
  5. repertoire temp dynamique
    Par killpilot dans le forum C
    Réponses: 2
    Dernier message: 26/04/2002, 16h19

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