begin process at 2012 05 28 15:55:19
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Débutant(e)

 > 

Alternative au htaccess


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Alternative au htaccess

vendredi 18 avril 2008 à 09:30:25 | Alternative au htaccess

ldevun

Bonjour,

Je suis entrain de réaliser un site internet en PHP, il y a une partie ou Les utilisateurs auront accès à leur fiches techniques en PDF en téléchargement.
Comment pui-jes protéger l'accès du dossier sans passer par .htaccess (car les utilisateurs sont amenés à évoluer et je ne souhaite pas changer mon fichier htaccess tout le temps).
Le but étant de rendre impossible l'accès au répertoire des fiches techniques si on tape son url mais sans demander systematique des mots de passe supplémentaires aux utilisateurs.

Voila, je suis pas sur d'avoir été clair, si vous avez des questions, n'hésitez pas
vendredi 18 avril 2008 à 11:23:08 | Re : Alternative au htaccess

neigedhiver

Salut,

Pour répondre très concrètement à ta question : utilise les sessions. C'est ce qu'il y a de plus pratique, même si c'est un peu moins sécurisé qu'un .htaccess

Pour répondre à une non question : tu n'as pas besoin de modifier un .htaccess à chaque fois que tu ajoutes un utilisateur : il te suffit d'utiliser un fichier de mot de passe que tu modifieras. C'est pas forcément plus compliqué que de gérer des sessions, et c'est pas forcément moins performant non plus : c'est juste pas le même soft qui travaille (c'est Apache et pas PHP)

Encore une dernière chose : il est possible de combiner l'authentification HTTP avec une base de données MySQL, il existe un module Apache pour ça (mod_auth_mysql).
C'est une combinaison entre la sécurité HTTP fournie par Apache, et la souplesse de gestion des utilisateurs par MySQL.


Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
vendredi 18 avril 2008 à 11:46:00 | Re : Alternative au htaccess

ldevun

Bonjour,

Mes fichiers PHP sont prets, j'ai déjà utilisé les sessions, mais lorsque qu'on connait l'adresse des repertoires il est facil de se balader dans le site et donc de récupéré les fichiers (qui sont des fichiers pdf).
Pour le modification du htpasswd, c'est pas moi qui vais suivre le site, c'est une personne connaissant rien au PHP ni à HTML d'ailleur.
J'ai vu que certaines personnes mettent des fichiers index.html dans les dossiers pour ne pas qu'on est accès aux fichiers c'est bien ca?
Je suis entrain de regarder la fonction (mod_auth_mysql), est ce compatible avec les sessions? Pas de redondance?

Merci pour toutes ces infos.
vendredi 18 avril 2008 à 11:55:45 | Re : Alternative au htaccess

neigedhiver

Il ne faut pas que les fichiers soient accessible depuis le net. Il faut qu'ils soient dans un répertoire protégé, ou qui se situe en dehors de l'arborescence de publication.
Il faut alors que les permissions soient gérées par PHHP, qui va lire le fichier et le renvoyer au navigateur(file_get_contents(), puis header('Content-type: application/pdf') puis echo.

Un fichier index.html n'empêche absolument pas de récupérer les fichiers qui se trouvent dans le répertoire. Il empêche simplement (de manière relativement basique) de lister le contenu du répertoire (ce qui peut se faire dans un .htaccess avec Options -Index)

Concernant mod_auth_mysql, il permet de gérer l'authentification HTTP d'après les utilisateurs/mots de passes stockés dans une base de données. Donc, ça fait un peu redondance avec les sessions, effectivement. Cependant, c'est quand même un peu plus sécurisé (pas de cookie, c'est le navigateur qui gère l'authenficiation sur le royaume (realm) défini dans le .htaccess)

Couplé à une connexion SSL, je ne vois pas ce qu'on peut trouver de mieux comme connexion sécurisée (il faut aussi que la base de données soit sécurisée, et qu'un seul utilisateur ait les permissions d'accès, et en lecture seule, à la table contenant les utilisateurs et leurs mots de passe).


Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
vendredi 18 avril 2008 à 14:36:30 | Re : Alternative au htaccess

ldevun

Merci pour toutes ces infos,

Il faut que les permissions soient gérées par PHP mais comment je dois faire pour bloquer l'accès au dossier qui contient les fiches? La fonction file_get_contents() peut-elle ouvrir le document dans une nouvelle page, et si c'est le cas, je dois mettre header('Content-type: application/pdf') puis echo au début de chaque fiche technique?

Pour le SSL, j'ai compris le fonctionnement, mon hébergeur OVH le propose mais j'ai le certificat qui apparait donc c'est à voir.
vendredi 18 avril 2008 à 17:37:28 | Re : Alternative au htaccess

neigedhiver

En fait, il faut que le script qui lit le fichier pdf ne fasse que ça : il ne pourra pas, par exemple, afficher de HTML.
Mais peu importe :
- il se charge de vérifier les permissions via la session.
- si l'utilisateur peut accéder au fichier pdf demandé, le script lit le fichier avcec file_get_contents()
- le script envoit l'entête adéquat avec header() puis affiche le contenu du fichier avec echo.
Selon le paramétrage du navigateur de l'utilisateur, le fichier sera proposé au téléchargement, ou ouvert avec une application adéquate (plugin Adobe Reader par exemple, sous windows). Ca, c'est, a priori, le problème du client : il peut choisir d'ouvrir dans la même fenetre ou une nouvelle, c'est son affaire.
Il est toutefois possible d'utiliser soit l'attribut target="_blank" pour un lien (non conforme XHTML 1.0 strict, mais valide XHTML 1.0 Transitional et Frameset), soit d'ouvrir une popup avec un JS, qui chargera ce script.

Pour ce qui est de la protection du répertoire, un simple .htaccess avec Deny from all suffit
La fonction file_get_contents() et toute les fonctions de fichier de PHP en général, ouvrent les fichiers locaux via le système de fichier, pas via HTTP : PHP en local n'est donc pas soumis aux restrictions du .htaccess.


Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
lundi 21 avril 2008 à 09:14:43 | Re : Alternative au htaccess

ldevun

Bonjour,

Je commence à comprendre, cependant ma page étant une page PHP avec plusieurs liens ves les fiches. Je mets où la fonction file_get_contents? Dans la balise <a href=""> ? Mon but étant que le PDF s'ouvre lorsqu'on clique sur le lien dans la page de toutes les fiches techniques.


Cette discussion est classée dans : utilisateurs, accès, htaccess, fiches, alternative


Répondre à ce message

Sujets en rapport avec ce message

Session + .htaccess + album photo [ par mikito ] Bonjour à tous, explication du problème : j'ai un site où les utilisateurs peuvent s'identifier et avoir accès à plusieurs pages selon leur niveau d'i Utilisateurs et droits d'accès [ par platon179 ] Bonjour a tous :) Je dois actuellement réaliser un outil devant pouvoir être utilisé par plusieurs utilisateurs, pour un Lycée, donc par exemple élève Utilisateurs et databases [ par bonxp ] Bonsoir,Je voulais savoir comment faire dans mysql pour que quand quelqu'un se logue avec phpmyadmin il est que l'accès a ses bases et pas a celles de .htaccess supprimé mais accès impossible [ par ThunderDog ] Bonjour ....Voilà, j'ai un site en PHPnuke-Platinium pour mon clan de jeu en réseau ....Tout tournait bien jusqu'au jour ou je me suis fait hacker un htaccess [ par montoche ] bonjour,mon site est en uft-8 et une page dois passer en iso pour afficher les caracteres speciaux, que dois je ecrire dans le fichier .htaccess pour Autoriser une seule adresse ip [ par biloutte33 ] Bonjour,j'ai créé une page sur mon site et je souhaite restraindre l'accès à une seule adresse ipdonc en gros faire une sorte de "fonction" du genre : Comment inclure un fichier sans qu'il ait accès aux variables ? [ par antoineherault ] Bonjour !Je suis actuellement en train d'essayer de faire un script évolutif fonctionnant gràce à un système de modules.Ce système doit être sécurisé Formulaire complexe avec connexion php/mysql [ par baxhax ] bonjour les amis Salut, je suis dans l'impasse, je suis débutant dans php et je dois faire un projet de recherche pour créer une base de données ave accès distant à un intranet [ par Moritus ] bonjour, J'aimerais avoir votre avis sur comment faire...je m'explique nous avons un intranet au boulot et on veux qu'il soit accecible de l'exterieu Eclipse et Subversion : Accès interdit [ par codefalse ] Bonjour à tous, Je viens d'installer un serveur Subversion sur mon serveur Debian, tout marche bien, l'acces est ok, j'ai réussi à mettre des projets,


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 5,382 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales