Newsgroup: it.comp.www.php
Titolo: protezione files

Salve a tutti,
ho creato una pagina alla quale ci si puo' accedere solo autenticandosi.
In questa pagina ci sono dei link a dei file. Pero' se qualcuno apre un
file (p.e. un pdf) e si copia l'url del file, lo puo' passare a qualcuno
che quindi potra' scaricarselo senza doversi loggare.
E' possibile fare proteggere questi file dal downloads da parte di
utenti non autenticati?
Grazie in anticipo
Matteo

Video68 ha scritto:

crea uno script che verifica che l'utente sia loggato, poi legge il file 
e te lo manda in output direttamente con il giusto content-type .... in 
questo modo chi scarica non vede l'url del file originale

 Matteo
ciao
alesi_27

 sessione, la quale viene settata solo se l'utente si è autenticato
Guarda che mi sà che non hai capito.
Il problema non è quello ma di impedire che l'utente scopra la directory del
file per downloadarselo da sè andandoci!
es.:
http://www.sito.it/download/file.pdf

 
http://www.sito.it/download/file.pdf
Fai un .htaccess nella directory download con dentro qualcosa del genere:
ErrorDocument 401 
http://www.sito.it/login.php
ErrorDocument 403 
http://www.sito.it/login.php
SetEnvIf Referer www\.sito\.it\/elenco_file.php downloadok
Order Deny,Allow
Deny from all
Allow from env=downloadok
Questo in pratica consente l'accesso alla directory download solo se si
proviene da un link nella pagina  
www.sito.it/elenco_file.php
. In caso
contrario ti spedisce a 
http://www.sito.it/login.php
.
Puro Apache, niente php.
S*

 Puro Apache, niente php.
Senti, dove posso trovare delle ulteriori delucidazioni su .htaccess?

 Senti, dove posso trovare delle ulteriori delucidazioni su .htaccess?
Nella documentazione di Apache, 
httpd.apache.org
S*

 questo modo chi scarica non vede l'url del file originale
Accidenti, non c'ho capito moltissimo.
Mi potresti dare ancora un paio di indizi. Mi basta sapere in quali
sezioni della reference cercare: vorrei cercare di arrivarci da solo
:-))
Cmq gia' grazie mille per la prima risposta
Matteo

 Puro Apache, niente php.
Spero che c'ho non significhi che devo manipolare qualcosa nel server:
non ne avrei la possibilita'.
Cmq ora vado a vedere cosa sono questi .htaccess e vediamo cosa ne vien
fuori :-))
grazie mille anche a te per la risposta
matteo

 Matteo
http://phpclasses.bgweb.it/browse.html/package/714.html
io uso una versione modificata di questa classe
ma penso che per te possa andare bene anche cosi' com'è
cmq diciamo che puoi prenderla come riferimento
ce ne sono altre nelle stesso sito ma non le ho provate

Silvio Sosio ha scritto:

cavoli questa me la devo studiare per bene
veramente bella come soluzione :-)

 veramente bella come soluzione :-)
TX :-)
Ha il punto debole che non funziona con browser strani che non trasmettono
il referer, come GetRight o roba simile. Ma nel suo caso direi che non
importa.
S* 

 importa.
Infatti :-))

 es.:
avevo capito benissimo e come ti ho detto di risolvere fai proprio 
quello che vuoi!
supponiamo che tu abbia un file PDF, credi una pagina .php per 
scaricarlo nella quale se è settata una certa variabile (ad es. 
user_auth=1 come var di sessione) allora restituisci direttamente il 
file PDF, non un link! quindi l'utente non avrà un link da copiare ma 
può accedere al PDF solo tramite la pagine di autenticazione.
Spero sia più chiaro ora
ciao
Alesi_27