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

MVC PHP Discussion :

Traitement générique sur l'ensemble des fonctions


Sujet :

MVC PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 208
    Points : 88
    Points
    88
    Par défaut Traitement générique sur l'ensemble des fonctions
    Bonjour,
    je développe une application en Flex 4.5 et PHP 5.2.6 (Zend + AMFPHP).
    J'aimerais mette en place un système de sécurité : vérifier que l'on a bien une variable de session avant chaque lancement d'une fonction... Ou presque...

    Par exemple, je souhaiterais que pour toutes mes fonctions de récupérations ou de modifications de données, une personne non connecté ne puisse l'utiliser.

    Par contre, certaines fonctions, d'export notamment, doivent être disponibles pour certaines applications tierces, donc dans ce cas il n'y a pas besoin d'être connecté.

    J'avais pensé au départ, me placer sur mon constructeur principal, et vérifier quelle fonction est appelée par quel objet, et j'aurais eu une liste de fonctions "clean" qui aurait pu être appelé sans variable de session. Seulement, je n'arrive pas à récupérer le nom de la fonction qui va être appelé. J'ai regardé avec la fonction debug_backtrace(), mais il y a un paquet d'informations remontées par Zend, et je ne suis pas sur que ce soit la meilleure solution.

    Si quelqu'un à une idée de traitement, ou un autre système de sécurisation, je suis preneur.

    Merci.

  2. #2
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Tu pourrais aussi bien architecturer ton appli PHP avec un modèle MVC et ajouter une couche ACL pour valider les droits utilisateurs sur les différentes actions.

    Voir: http://julien-pauli.developpez.com/t...telier/aclmvc/

    L'article parle du Zend Framework mais la même logique est applicable ailleurs.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 208
    Points : 88
    Points
    88
    Par défaut
    Bonjour et merci de votre aide.

    Je suis un vrai novice en Zend.

    Mes utilisateurs étant enregistrés dans une table, est-ce qu'il y a un moyen de fusionner ce système avec mes utilisateurs ? Ou est ce que je devrais un rôle "utilisateur" qui aura les droits et un rôle "visiteur" qui n'aura accès qu'à certaines fonctions ?

  4. #4
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Quand tu parles de Zend, tu veux dire Zend Framework ou Zend Engine ?

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 208
    Points : 88
    Points
    88
    Par défaut
    Je veux parler de Zend Framework, et son utilisation avec Flex.

  6. #6
    Membre éprouvé
    Avatar de 5h4rk
    Homme Profil pro
    CTO at TabMo
    Inscrit en
    Février 2011
    Messages
    813
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : CTO at TabMo
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2011
    Messages : 813
    Points : 1 297
    Points
    1 297
    Par défaut
    Bonjour,
    Oui tu peux utiliser les Acl et surtout Zend_Auth qui te permettra de vérifier si ton utilisateur est connecter.

    Tu pourras faire un plugins gérant l’authentification.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 208
    Points : 88
    Points
    88
    Par défaut
    Bonjour merci,

    par contre, malgré plusieurs tutoriaux, il y a toujours le problème principal qui est : comment implémenter cette vérification sur chaque fonction (ou presque) de manière générique ?

    J'aimerais, grosso modo, préciser que toutes mes fonctions ont le droit "user", et seulement deux ou trois qui ont un accès "guest".

    Sachant que j'utilise Zend AMF qui me retourne mes listes d'objets à mon Flex.

    Merci de votre aide.

  8. #8
    Membre éprouvé
    Avatar de 5h4rk
    Homme Profil pro
    CTO at TabMo
    Inscrit en
    Février 2011
    Messages
    813
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : CTO at TabMo
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2011
    Messages : 813
    Points : 1 297
    Points
    1 297
    Par défaut
    Il te fait faire un plugin ou tu définis quel role à accès à quoi. Et ce plugin devra etre exécuter avant chaque action.

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 208
    Points : 88
    Points
    88
    Par défaut
    Bonjour 5h4rk,

    et merci de votre aide.

    Donc je suis obligé de repasser sur l'ensemble de mes fonctions ?

    Dommage.

    Tant pis, si quelqu'un à une dernière idée, n'hésitez pas.

  10. #10
    Membre actif
    Profil pro
    Inscrit en
    Février 2009
    Messages
    278
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Février 2009
    Messages : 278
    Points : 284
    Points
    284

Discussions similaires

  1. navigation-rule sur l'ensemble des pages
    Par laurent.c123 dans le forum JSF
    Réponses: 9
    Dernier message: 09/02/2009, 00h11
  2. Réponses: 2
    Dernier message: 29/10/2006, 18h52
  3. Réponses: 3
    Dernier message: 21/10/2006, 16h03
  4. [PHP-JS] Compte à rebours sur l'ensemble des pages
    Par hash95 dans le forum Langage
    Réponses: 7
    Dernier message: 14/06/2006, 15h14
  5. pointeurs sur les arguments des fonctions?
    Par brunoP dans le forum C
    Réponses: 3
    Dernier message: 14/05/2006, 18h11

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