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 :

[Sécurité] Authentification au téléchargement


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Huntress
    Femme Profil pro
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Par défaut [Sécurité] Authentification au téléchargement
    Bonjour,

    Je me trouve probablement sur le mauvais forum, mais je sais pas trop où poster...

    J'ai un problème de sécurité. J'aimerais pouvoir sécuriser le téléchargement d'un fichier (.exe, .jpg. zip... peu importe). La problématique EST donc que la "personne mal-intentionnée" connait l'url finale, celle qui pointe vers ce fichier... voyez-vous... ?

    Où est-ce que je dois regarder ? Sachant que j'aimerais une authentification par login / mot de passe. Et déjà est-ce possible selon vous ?

    EDIT : tiens je me demande si je ne veux pas la même chose que lui : http://www.developpez.net/forums/sho...d.php?t=220793

  2. #2
    Invité
    Invité(e)
    Par défaut
    solution 1 : tu mets tes fichiers en dehors su répertoire web

    solution 2 : tu mets un fichier htaccess dans le repertoire ou se trouve les fichiers à télécharger avec un deny from all

  3. #3
    Membre Expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Par défaut
    http://php.developpez.com/faq/?page=...rotectdownload

    Sinon pour améliorer cette solution, tu peux rajouter de la réécriture d'URL :
    http://www.developpez.net/forums/sho...04&postcount=5

  4. #4
    Membre éclairé Avatar de Huntress
    Femme Profil pro
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Par défaut
    Merci pour vos réponses.

    J'ai tenté le "deny fom all", j'ai pas réussi il me dit erreur 403 quand je clique sur mon lien...

    En gros ce que j'ai fait, c'est un index.php qui contient un lien qui pointe bêtement sur fichiers/image.jpg. Et le dossier fichiers contient mon htaccess et image.jpg bien sûr.

    Et j'ai aussi lu la FAQ, et je me rends compte que je change un peu de position par rapport à ce que j'ai dit dans mon premier post).

    Donc concrètement :
    - une personne arrive sur l'url comme par "enchantement" : erreur 403
    - une personne arrive normalement, en navigant de page en page... donc accès "via PHP" : autorisé...


    Bon de toutes les manières c'est possible mais je m'y suis mal pris...

    C'est pas bon çà ?

    order deny,allow
    deny from all

  5. #5
    Membre Expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Par défaut
    Si si c'est bon, tu fais un deny from all. Mais après il faut faire un script php (accessible à tous), qui vérifie si tu es logué, et si c'est le cas, qui renvoie le contenu du fichier inaccessible (parce que PHP y a accès, lui). C'est ce qui est fait dans le second lien que je t'ai proposé.

  6. #6
    Membre éclairé Avatar de Huntress
    Femme Profil pro
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Par défaut
    J'suis un peu morte de honte

    Je vais tenter de t'expliquer ce que je pense avoir compris, histoire que je parte pas dans tous les sens.

    J'ai mon espace sécurisé normal avec accès login/pass - ok
    /espace_secu/

    Et j'ai également un répertoire contenant des fichiers à protéger - ok
    /espace_secu/fichiers_proteges/

    Est-ce que c'est ce dernier répertoire qui contient le htaccess (deny from all) ainsi que le fichier tout_puissant.php qui est chargé d'autoriser les téléchargements ?

    Si jusque là j'ai bon... comment je "dis" dans mon htaccess que rien n'est accessible si ce n'est tout_puissant.php ?

    Laisse moi deviner :
    RewriteRule ^([a-z0-9A-Z_-]*).pdf$ dl.php?file=$1.pdf [L]

    C'est plus de la honte que je ressents à ce niveau là, toute mes confuses, je réfléchis là dessus, et vous reviens si j'y arrive pas

  7. #7
    Membre Expert Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Par défaut
    Salut,
    il faut que tu mettes tout_puissant.php dans /espace_secu/

    Bye

  8. #8
    Membre Expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Par défaut
    Citation Envoyé par Huntress
    J'suis un peu morte de honte
    Faut pas !

    Citation Envoyé par Huntress
    Est-ce que c'est ce dernier répertoire qui contient le htaccess (deny from all) ainsi que le fichier tout_puissant.php qui est chargé d'autoriser les téléchargements ?
    Alors c'est bien là que tu mets ton htaccess, mais le tout_puissant.php (qui s'appelle dl.php dans mon exemple) il va être autre part, genre dans le répertoire parent. Comme ça il est accessible sans souci.

    Citation Envoyé par Huntress
    Laisse moi deviner :
    RewriteRule ^([a-z0-9A-Z_-]*).pdf$ dl.php?file=$1.pdf [L]
    Ca en fait à la réflexion tu le mets dans un autre htaccess, qui celui-là sera dans le répertoire où il y a tout_puissant.php. Il veut dire que si dans ce répertoire on appelle machin.pdf, alors en fait on va appeler dl.php?file=machin.pdf (il faut que tu remplaces dl par tout-puissant, bien sûr).

    Donc dans tout_puissant, tu récupères le nom du fichier dans ta variable GET, et tu vas aller lire le fichier dans ce fameux répertoire protégé (ou même à un autre endroit du disque dur, inaccessible par le serveur web).

    C'est plus clair ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Sécurité] Authentification utilisateur sur site
    Par Badaboumpanpan dans le forum Langage
    Réponses: 2
    Dernier message: 04/07/2006, 11h57
  2. [Sécurité] Authentification MD5
    Par dinastar dans le forum Langage
    Réponses: 4
    Dernier message: 16/03/2006, 16h48
  3. [Sécurité] Proteger un téléchargement de fichier
    Par Oberown dans le forum Langage
    Réponses: 7
    Dernier message: 16/02/2006, 13h16
  4. [MySQL] Authentification et téléchargement sur un site Free...
    Par Olish dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 26/01/2006, 13h32

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