[PHP-it] sicurezza download
Jonathan Stoppani
st.jonathan at gmail.com
Thu Jan 4 13:08:33 CET 2007
On Jan 4, 2007, at 1:04 , Mailinglist - Francesco Reitano wrote:
> Salve raga, sto esaminando tutte le possibilità per rendere un
> download sicuro solo per utenti registrati,
> faccio un esempio: l'amministratore carica un file che deve essere
> visto dall'utente A, ma non dall'utente B.
> Apparte la visualizzazione nella pagina php è ovvio che il file non
> deve essere visibile semplicemente tramite URL.
> Quindi se A lo scarica e memorizza l'URL per il download (http://
> www.sito.it/file/filedascaricare.zip) e lo passa
> a B, B non deve poter scaricare il file.
> La prima soluzione che però non mi piace è quella di mettere il
> file in un campo blob del db, ma non mi piace,
> non voglio inserire file nel db.
> A questo punto mi viene in mente di spostare i file da una cartella
> dove sono memorizzati a una cartella temporanea
> dove magari modifico il nome aggiungendo il timestamp o altro e
> avviare il donwload da lì. E qui mi sorge il dubbio:
> come cancellare il file alla fine del download?
>
> Voi avete altre idee o soluzioni?
>
> Ciauz
> Francesco
Al momento dell'upload salvi il file in una directory non accessibile
dal web (se non puoi, puoi sempre dargli un nome che è un qualche
hash md5 o sha1 e salvi la corrispondenza nel db), poi tramite mod
rewrite reindirizzi tutte le richieste a download.php (per esempio)
che va a leggere l'url (e pesca il file con la corrispondenza
dell'hash nel db, oppure dalla cartella non accessibile) e dopo gli
opportuni controlli di login/permessi ecc lo passa all'output buffer
con gli header corretti. ;)
Best Regards,
Jonathan Stoppani
------------------------------
Mail: st.jonathan a gmail.com
ICQ: 322754291
AIM: garetjax a mac.com
MSN: st.jonathan a gmail.com
GTalk: st.jonathan a gmail.com
More information about the Php-it
mailing list