Accueil > Forum > > > > Securite fichier
Securite fichier
samedi 9 octobre 2004 à 16:26:49 |
Securite fichier

mortiis
|
Bonjour à tous Je fait un site ou il est possible de télécharger des fichiers. Présentement je les protège par mot de passe via un .htaccess J'aimerais me débarasser du .htaccess et faire la même chose par programmation avec php dans le but que le seul moyen de télécharger un fichier sur le site soit en cliquant sur un lien d'une page. Je ne veut pas que l'utilisateur puisse télécharger un fichier en inscrivant l'adresse directement dans le navigateur. Merci d'avance pour l'aide et pour le temps.
|
|
samedi 9 octobre 2004 à 19:54:33 |
Re : Securite fichier

defkrie
|
garde les .htacces cree une base de donnée aves les champ int numero | char lien 0 | http:// ...... sur le site a la place du lien traditionnel tu fais un lien vers un script php a qui tu envoie le numero par exmeple 0 il recherhce dans la base le lien et lance un téléchargemnt automatique ( boite de windows) \-> Defkrie !?! \->http://ndwc.fwhost.net/
|
|
samedi 9 octobre 2004 à 20:14:18 |
Re : Securite fichier

mortiis
|
Bonjour à tous
Merci pour ce conseil, mais ce n'est pac ce que je cherche.
Parce que de cette façon, si l'utilisateur connait le lien du fichier, il peut le tabper directement dans la barre d'adresse de son navigateur et je ne veut pas sa.
De plus je ne sait jamais quels liens seront disponibles, puisque mon script liste les fichiers qui sont dans un répertoire et c'est ce qui constitu les liens de ma page. J'ajoute et j'enlève souvent des fichiers de ce répertoire et sa serait long de mettre la base de données à jour chaque fois.
Si tu a une autre solution, je suis pret a en prnedre considération.
Merci beaucoup pour ton aide
|
|
samedi 9 octobre 2004 à 20:55:17 |
Re : Securite fichier

juki_webmaster
|
Autre astuce, en combination avec le message de defkrie. Tu place tes fichiers zip/exe/tar... dans un dosseir, tu met le htaccess. Ta table sql tu la fait comme ça :
CREATE TABLE download ( id int(11) NOT NULL auto_increment, name varchar(255) DEFAULT '0' NOT NULL, extension varchar(255) DEFAULT '0' NOT NULL, code varchar(255) DEFAULT '0' NOT NULL, nombre varchar(255) DEFAULT '0' NOT NULL, titre varchar(255) DEFAULT '0' NOT NULL, description varchar(255) DEFAULT '0' NOT NULL, taille varchar(255) DEFAULT '0' NOT NULL, dateajout varchar(255) DEFAULT '0' NOT NULL, version varchar(255) DEFAULT '0' NOT NULL, key id (id) ) TYPE=MyISAM;
Donc tu creer une page d'administration, tu inject les champs : name = nom du fichier (sans l'extenstion) (ex : photoshop) extension = extension de ton fichier (ex : .zip) titre = titre de ton fichier (ceci sera afficher) (ex : Photoshop ! meilleur outil...) description = desction du fichier (ceci sera afficher) (ex : creer une animation, des logos...) version = version du prog (ex : 1.42342354354535)
Ensuite tu utilise la fonction date() avec le format que tu prefere (cf : date & heure, phpcs.com) pour le champ 'dateajout' Taille : calcul de la taille du fichier filesize("photoshop.exe"); , 'nombre' tu met 0 ceci te permettra de faire un compteur de telechargement & enfin : 'code' que tu genere un nombre au hasard, ex : $code = rand(100000,999999);
DANS TON CODE: dés que ta la variabe $code, tu renomme le fichier par : ''.$name.''.$code.''.$extension.''
Voila, tu affiche le tout avec une while et un 'select `download` ORDER BY 'id' DESC. en sortie de la while tu aura un tableau, tu affiche le tout, comme ça tout est php.
Bon les liens doivent etre : http://tonsiteatoietrztgfrd.com/zip.php?id=NUMERO DU FICHIER&code=CODE ISSU DE LA TABLE 'code'. Ceci selectionne la table 'download' par l'ID ($id), et sa compare le champ 'code' à $code, si il sont parail, sa telecharge le fichier par cette manniere :
'http://tonsiteatoifdsgfsdfgdfgdfg.com/fichier/'.$name.''.$code.''.'$extension.''
Dés que le script ajoute 1 au compteur de telechargement, tu renomme à nouveau le fichier, par :
$codenouveau = rand(100000,999999); ''.$name.''.$codenouveau.''.$extension.''
Et tu modifie le champ 'code' par la variable $codenouveau.
VOILA !
En claire : tu modifier à chaque telechragement le nom du fichier. (une partie)
Je te promet que si tu manipule bien le php&les requettes php, tu y reussi.
Si ta besoin d'aide supplementaire le forum est là pour ça, normalement je n'avais pas à te sortir un tel baratin, mais bon, desidement en ces jours-ci je suis assez motivier.
++
|
|
samedi 9 octobre 2004 à 20:56:40 |
Re : Securite fichier

juki_webmaster
|
Desoler : nombre varchar(255) DEFAULT '0' NOT NULL, par nombre int(255) DEFAULT '0' NOT NULL,
|
|
dimanche 10 octobre 2004 à 02:07:57 |
Re : Securite fichier

mortiis
|
Bonjour à tous
Merci beaucoup, ta solution est asser intéressante et pas trop compliquer a implanter, je n'y avait pas penser.
Cela pourra servir à plusieurs.
Par contre, sa ne convient toujours pas à mes besoins, car je ne veut pas renommer mes fichiers, car je les utilise régulièrement avec d'autres programme et je ne veut pas les modifier.
De plus si quelqu'un réussit à trouver le nom de fichier, même s'il est renommé souvent, alors il peut le télécharger.
Je sait qu'il est possible de faire en sorte que le seul moyen de télécharger un fichier soit avec un lien dans une page. Sa se fait avec les .htaccess je crois, j'ai trouver le code d'un htaccess qui est sensé faire sa, je l'ai essayer, mais sa bloque tous mes fichiers, alors je met le contenu ici dans l'espoir que toi ou quelqu'un d'autre sache m'expliquer pourquoi sa ne fait pas ce que je veut. et comment je pourait le modifier pour arriver au résultat voulu.
RewriteEngine On RewriteCond %{HTTP_REFERER} !="" RewriteCond %{HTTP_REFERER} "!^http://domain/.*$" [NC] RewriteCond %{REQUEST_URI} "\.(txt|doc|pdf|zip|mp3)$" RewriteRule .* - [F]
Merci à tous.
|
|
dimanche 10 octobre 2004 à 02:09:46 |
Re : Securite fichier

mortiis
|
Bonjour à tous
Ah oui, le problèmme avec ce htaccess, c'est que je ne peut même plus voir mes pages php, htm et autres, bref je ne peut plus accéder à rien du site.
Merci encore.
|
|
dimanche 10 octobre 2004 à 02:55:55 |
Re : Securite fichier

juki_webmaster
|
Re, Pas mal, pas mal ton htaccess ! Je pense qu'avec ce qu'on a fournis cela servirais bien d'autres. Enfin bref [...] J'espere que tu à reussi ce dont tu voulais, car un moment je me suis dit : "c'est impossible, il veut qu'on puisse pas y aceeder au fichier à distance, mais juste par une apge web..." Bonne continuation à toi.
|
|
dimanche 10 octobre 2004 à 03:44:57 |
Re : Securite fichier

mortiis
|
Bonjour à tous
Merci pour ton encouragement, mais connait tu les htaccess, moi pas beaucoup.
C'est pourquoi je pose cette question. J'ai une idée de ce que ce htaccess fait, mais je ne suis pas totalement certain. Tout ce qui est caractère spéciaux dans ce htaccess, est pour moi du chinois.
J'aimerais vraiment comprendre, pour arriver à mes fins qui sont mentionnés plus haut.
Merci encore pour tout.
|
|
dimanche 10 octobre 2004 à 07:08:51 |
Re : Securite fichier

mortiis
|
Réponse acceptée !
Bonjour à tous
J'ai trouver la solution.
Ma solution est avec un fichier .htaccess Aucun lien, même pas un lien sur mon site ne permet de télécharger le fichier. Le seul moyen de faire downloader le fichier est avec un download forcé.
Voici le contenu du fichier .htaccess
AuthUserFile null AuthGroupFile null RewriteEngine On ReWriteRule .*\.(pdf|zip|mp3)$ http://adresse_vers_ou_rediriger/ [R,L]
Voila sa fait ce que je veut. Je ne sait pas s'il existe d'autres moyens et si c'est le meilleur, mais sa fonctionne et c'est appliquable aux sous doxxiers.
Merci à tous ceux qui ont tentés de m'aider. Et bonne prog à tous.
Si sa intéresse quelqu'un voici le code PHP pour faire un download forcé :
$file = "path_complet_du_fichier"; header("Content-Type: application/force-download"); header("Content-Length: ".filesize($file)); $file_name = basename($file); header("Content-Disposition: attachment; filename=".$file_name); readfile($file);
À noter que ce code doit être seul dans la page, C'est à dire qu'il ne doit avoir aucun code HTML ni JavaScript ou autre. Il ne doit pas y avoir de texte ni de print(); ni de echo ""
Personellement, moi je l'apelle dans un popup je trouve sa plus pratique.
Pour augmenter la sécurité, il est préférable de faire une redirection dans le fichier de download si l'utilisateur n'est pas enregistré (Utilisation de session) ou si la page de download n'est pas appelé à partir d'une page de votre site.
En utilisant ce fichier .htaccess combiné avec le fichier php de download forcé (avec votre sécurité dednas), d'après moi, vos fichiers sont protégés.
Si quelqu'un à des commentaires ou connait un meilleur moyen, j'aimerais savoir.
Alors la j'ai finis Bonne prog.
|
|
Cette discussion est classée dans : fichier, site, télécharger, htaccess, securite
Répondre à ce message
Sujets en rapport avec ce message
Fichier HTACCESS [ par slhuilli ]
Bjr,Quelqu'un aurat il déjàç développé un outiil PHP générant un fichier .HTACCESS car j'ai beaucoup de mal d l'écrire.Merci de vos réponses.SLSébasti
securite lors d'un upload [ par erich10 ]
j'ai un formulaire pour uploader un fichier dans un repertoire .Pour le faire mon repertoire est en chmod777, comment puis je faire pour interdire l'e
fichiers htaccess [ par glipper ]
Bonjour,les fichiers .htaccess servent à proteger l'acces à un (ou des) repertoires. Je suppose donc que ce fichier est lu avant n'importe quel autre
fin de fichier [ par morgandetoi06 ]
hellole moteur de recherche du site par en sucette donc je pose ma question sur le forum meme si la solution doit etre deja expliquée dans le site...c
Effacer un fichier [ par ben01n ]
salut a tous,j'ai un petit problème. Je suis en train de faire une page php pour effectuer la maintenance du site. pour cela j'aimerai pouvoir effacer
Test de presence d'un fichier en local ?? [ par djes106 ]
Bonjour,Voila l'histoire, je développe 1 site web, et pour un meilleur affichage du site, j'ai besoin de tester la présence d'une police de caractere
Upload a partir d'un site ? Possible??? [ par supergrey ]
Bonjour, je voudrais savoir s'il est possible d'uploader un fichier a partir d'un site web exmple: http://www.monsite.com/fichier.jpgvers le serveur
pb htaccess + htpasswd [ par girlbond ]
bonjour,j'ai créé un fichier htaccess qui contient ceci :AuthUserFile c:/program files/easyphp/www/gpi/ .htpasswdAuthGroupFile /dev/nullAuthName ByPas
htaccess sur un repertoire et toutes ses pages [ par rastagnol ]
bonjour ! j'aimerais savoir comment faire un fichier htaccess sur un repertoire et toutes ses pages actuellement, j'ai mis un fichier htaccess avec de
.htaccess [ par x0s ]
Bonjour, Beaucoup de monde utilise les htaccess aujourd'hui et il y a des erreurs récurrentes qui ne sont pas cité sur les sites d'aide:le fichier nom
Livres en rapport
|
Derniers Blogs
SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)[HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE) par Gio
Je m'y prends un peu tard je sais, mais bon je suis développeur web et donc hyper fainéant ! Toujours dans le cadre des technologies émergentes, ici HTML5, parce qu'on aime HTML5 chez Wyg , nous seront présent, le vieux ( Aurélien V.) et moi, pour pr...
Cliquez pour lire la suite de l'article par Gio
Forum
CHAMPS TIMECHAMPS TIME par vargas
Cliquez pour lire la suite par vargas
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|