NO poder saber la URL de un archivo descargado.

08/01/2008 - 19:13 por ~jose~ | Informe spam
Hola, que tal?, Feliz año a todos.

Bueno, mi problema es el siguiente.
Tengo una web que para hacer descargas de archivos hay que ingresar un
código en un textbox y este es el que permite la descarga o no. Si la
permite con un response.redirect() el cliente puede descargalo. Hasta
aquí todo bien, el problema es que el cliente no tiene que poder saber
desde donde se ha descargado el archivo bien sea para que no vaya
directamente a la url y lo descargue otra vez o para que no intente
adivinar las otras descargas que existen en esa carpeta. He estado
probando con eliminar la cache mediante estos códigos:

<%
Response.Expires = 60
Response.Expiresabsolute = Now() - 1
Response.AddHeader "pragma","no-cache"
Response.AddHeader "cache-control","private"
Response.CacheControl = "no-cache"
%>

Pero si el cliente es un pelín avispado si vas a la carpeta de
archivos temporales mientras se está descargando el archivo, se puede
ver perfectamente toda la URL entera.

Por si acaso os digo que NO tengo acceso al servidor, eh!, es servidor
de pago, lo digo por si se os ocurre alguna solución en la que haya
que tocar el servidor.

Bueno, pues eso, si me podéis ayuda..., cualquier sugerencia (o
solución, jejeje) será bien venida.

Un saludo,
jose
 

Leer las respuestas

#1 ~jose~
09/01/2008 - 14:26 | Informe spam
Hola, que tal?
Sobre la solución que propones, creo que sabré hacerla excepto el
último punto.
Si descargo el archivo con un response.redirect() las lineas de código
que le siguen no se ejecutan (probé con response.write...) entonces
como puedo eliminar la copia si se ha interrumpido el código? y... ya
podré eliminar la copia si se supone que se está descargando el
archivo?

Y sobre lo de...
hay varias


Que otras formas se te ocurren (si no encontramos solución para las
preguntas que he hecho sobre la propuesta)?

Gracias y un saludo
jose

hay varias
Por ejemplo, cuando el cliente pide el archivo:
- generas una palabra alfanumérica de manera aleatoria
- haces una copia de tu fichero
- renombras la copia con el alfanumerico
- descargas la copia
- borras la copia

Cuando quieran ver el origen o saltarse la linea de descarga no encontrarán
el archivo.


> ¥-- Lombar --¥
Jose Lombardia

> Visita mi blog:
Comer y Rodarwww.lombar.com
>
"~jose~" escribió en el mensaje de noticiasnews:
Hola, que tal?, Feliz año a todos.

Bueno, mi problema es el siguiente.
Tengo una web que para hacer descargas de archivos hay que ingresar un
código en un textbox y este es el que permite la descarga o no. Si la
permite con un response.redirect() el cliente puede descargalo. Hasta
aquí todo bien, el problema es que el cliente no tiene que poder saber
desde donde se ha descargado el archivo bien sea para que no vaya
directamente a la url y lo descargue otra vez o para que no intente
adivinar las otras descargas que existen en esa carpeta. He estado
probando con eliminar la cache mediante estos códigos:

<%
Response.Expires = 60
Response.Expiresabsolute = Now() - 1
Response.AddHeader "pragma","no-cache"
Response.AddHeader "cache-control","private"
Response.CacheControl = "no-cache"
%>

Pero si el cliente es un pelín avispado si vas a la carpeta de
archivos temporales mientras se está descargando el archivo, se puede
ver perfectamente toda la URL entera.

Por si acaso os digo que NO tengo acceso al servidor, eh!, es servidor
de pago, lo digo por si se os ocurre alguna solución en la que haya
que tocar el servidor.

Bueno, pues eso, si me podéis ayuda..., cualquier sugerencia (o
solución, jejeje) será bien venida.

Un saludo,
jose

Preguntas similares