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

Langage PHP Discussion :

Lire les acls d'un fichier/repertoire


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mai 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Mai 2007
    Messages : 108
    Points : 57
    Points
    57
    Par défaut Lire les acls d'un fichier/repertoire
    Bonsoir,

    Je dois réaliser un petit explorateur de fichier en php. L'utilisateur s'authentifie, puis une fois logguer, il a alors la liste d'un répertoire.
    Ce même répertoire est partagé par les users du reseau via samba (mais là n'est pas le pb).

    Mais un utilisateur donné ne doit pouvoir lire que les fichiers pour lesquels il a accès. Du coup se pose le problème de la lecture des acls des fichiers et répertoire en question.

    J'ai essayé de regarder du coté de Zend_acl, mais il semble que cela ne soiit pas cela (même si par la suite, j'en aurais besoin).

    PS : L'OS est Linux. J'enviseage pas de Windows.

    Merci pour votre aide.

  2. #2
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2008
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 504
    Points : 470
    Points
    470
    Par défaut
    que les fichiers pour lesquels il a accès
    A quel genre de droit d'accès penses-tu ? Une gestion de droit effectuée par PHP ou à la gestion de droit linux ?

    Dans ce dernier cas, tu dois avoir conscience du fait que quand apache accède à un fichier, il y accède en tant qu'utilisateur Apache. Pour restreindre l'accès a certain fichier via une page PHP et en fonction des droits d'utilisateur linux, il faut que tu programme derrière quelque chose qui soit capable de d'associer un compte utilisateur de ton appli avec un compte utilisateur linux...

    Dans tous les cas, les fonctions de lectures des attributs de fichier sont nombreuses en PHP... fileperms, fstat, fileowner...

  3. #3
    Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mai 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Mai 2007
    Messages : 108
    Points : 57
    Points
    57
    Par défaut
    Citation Envoyé par comode Voir le message
    A quel genre de droit d'accès penses-tu ? Une gestion de droit effectuée par PHP ou à la gestion de droit linux ?
    des droits linux (même si je pense ensuite les retranscrire en droits php via zend_acl par ex)

    Citation Envoyé par comode Voir le message
    Dans ce dernier cas, tu dois avoir conscience du fait que quand apache accède à un fichier, il y accède en tant qu'utilisateur Apache. Pour restreindre l'accès a certain fichier via une page PHP et en fonction des droits d'utilisateur linux, il faut que tu programme derrière quelque chose qui soit capable de d'associer un compte utilisateur de ton appli avec un compte utilisateur linux...

    Dans tous les cas, les fonctions de lectures des attributs de fichier sont nombreuses en PHP... fileperms, fstat, fileowner...
    [/quote]

    Petite précisions, pour les droits standard Unix, pas de soucis. Mais les droits sur les fichiers sont gérés par les acls. Petit exemple :
    getfacl: Removing leading '/' from absolute path names
    # file: home/public/Test
    # owner: elekaj
    # group: admins
    user:alain:r-x
    group:compta:rwx
    group:intra:r-x
    user:seb:rwx
    Se sont donc les acls que je veux lire.

    Ensuite, pour le problème des accès par apache, je pense ajouter en acl, un accès en lecture seule à l'arborescence.

  4. #4
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2008
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 504
    Points : 470
    Points
    470
    Par défaut
    Bon, je m'engage sur une pente glissante en tentant de te répondre dans le mesure ou les acl ne sont pas du tout ma tasse de thé (et je m'excuse d'avance si je suis a coté), mais j'ai entendu dire que la librairie CakePHP avait des fonctions de gestion des ACL.

    Sur google, j'arrive à : http://book.cakephp.org/view/545/Using-the-AclBehavior

    En espérant que ça puisse te servir de point de départ pour tes recherches, désolé sinon...

Discussions similaires

  1. Lire les lignes d'un fichier avec csh
    Par nicolas581 dans le forum Linux
    Réponses: 4
    Dernier message: 24/03/2010, 16h38
  2. [EXCEL] Lire les données d'un fichier multi-feuilles
    Par FeydRautha dans le forum WinDev
    Réponses: 4
    Dernier message: 28/05/2007, 13h32
  3. [JACOB] Lire les lignes d'un fichier Word
    Par djools45 dans le forum Documents
    Réponses: 2
    Dernier message: 25/05/2007, 15h34
  4. Lire les données d'un fichier .wav ?
    Par DelphLaga dans le forum Modules
    Réponses: 2
    Dernier message: 16/10/2006, 16h21
  5. Réponses: 5
    Dernier message: 20/08/2002, 18h01

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