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 :

Restriction sur des données, service


Sujet :

Symfony PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 93
    Points : 63
    Points
    63
    Par défaut Restriction sur des données, service
    Bonjour,

    Je développe une plateforme en symfony 3 (et je suis encore un peu débutant sur ce framework) permettant de la gestion administrative basique d'élèves de plusieurs écoles.
    Sur cette plateforme, plusieurs administratifs viennent se connecter. Ces administratifs peuvent appartenir à une ou plusieurs école.
    Je voudrais ajouter une sécurité interdisant à un administratif de voir/editer une fiche élève d'une école dont il ne fait pas parti.

    J'ai pensé faire un service pour ça (un style de before filter), écoutant les événements du contrôleur et avec comme paramètres l'entity manager pour faire des recherches sur les entités et le token storage pour récupérer l'utilisateur loggé.

    Mais je bloque un peu et j'ai l'impression qu'il y a certainement une meilleure solution.
    Par exemple comment puis-je savoir sur quel entité je fais une recherche depuis le listener onKernelController ?

    Voici la déclaration de mon service auquel j'ai pensé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    app.event.access_listener:
                class: AppBundle\EventListener\AccessListener
                arguments: ["@doctrine.orm.entity_manager", "@security.token_storage"]
                tags:
                    - { name: kernel.event_listener, event: kernel.controller, method: onKernelController }
    Avez vous des conseils ?

    Merci

  2. #2
    Membre expert
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Points : 3 004
    Points
    3 004
    Par défaut
    il faut jouer avec les rôles

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 93
    Points : 63
    Points
    63
    Par défaut
    Citation Envoyé par dukoid Voir le message
    il faut jouer avec les rôles
    Je ne comprends pas bien comment gérer ça avec des rôles. Tous les utilisateurs ont les mêmes droits et je n'ai qu'un seul rôle qui est USER.
    Les utilisateurs sont juste associés à des écoles et ne peuvent voir que les élèves des écoles concernées (je ne veux pas qu'en jouant avec l'url certains puissent accéder à des données pas à eux).
    J'ai donc 2 entités (école et user) avec une relation many to many entre elles et une entité élève qui est lié à une école. Pour info il y a une centaine d'utilisateurs et un vingtaine d'écoles.
    Avec CakePhp j'aurais par exemple mis ma vérification dans la méthode beforeFilter du controlleur de l'entité à surveiller (élève).
    Il me semblait qu'un équivalent pouvait se faire à l'aide d'un service.. Non ? et comment ?

  4. #4
    Membre expert
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Points : 3 004
    Points
    3 004

Discussions similaires

  1. Réponses: 16
    Dernier message: 14/04/2006, 18h38
  2. Parsing XML gestion DB I/O sur des données de type CLOB
    Par stchitembo dans le forum Oracle
    Réponses: 5
    Dernier message: 22/03/2006, 11h14
  3. Réponses: 12
    Dernier message: 02/01/2006, 22h13
  4. Réponses: 5
    Dernier message: 13/07/2005, 10h03
  5. Travailler sur des données qui doivent être triées
    Par haypo dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 19/07/2003, 17h13

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