Título: Permisos de descarga en servidores HTTP Publicado por: D4RIO en 31 Mayo 2011, 13:24 pm Hola gente,
Mi duda es la siguiente: Si tenemos un servicio X, donde un usuario tiene almacenado un archivo en nuestra web, ¿cómo controlamos que este usuario sea el único en poder descargar el fichero? A este punto estoy suponiendo que no hubo autenticación HTTP, por ejemplo un webmail o un foro. ¿Cómo controlar que realmente SOLO USUARIOS tienen acceso real al archivo? ¿Cómo lo harían? Título: Re: Permisos de descarga en servidores HTTP Publicado por: el-brujo en 31 Mayo 2011, 19:05 pm Instalar Apache + PHP + MySQL + Perl en Windows y Linux + Configuración Avanzada
http://foro.elhacker.net/tutoriales_documentacion/instalar_apache_php_mysql_perl_en_windows_y_linux_configuracion_avanzada-t251.0.html Mira el apartado: 9) Autorización en Apache Es una opción sencilla y simple, pero yo creo que no es la mejor. Mejor algo más completo, en PHP y MySQL que valide el usuario antes de proceder a descargar un fichero. Algunos sitios, como SMF, pues codifican el nombre del fichero para "ocultarlo" y luego validan si es usuario o invitado. Cualquier gestor de descargas tendrá esas opciones y muchas más. Título: Re: Permisos de descarga en servidores HTTP Publicado por: D4RIO en 31 Mayo 2011, 22:02 pm Claro, a mi se me ocurrió que los archivos pueden estar en un lugar inaccesible hasta que se descarga. Ahi, si el usuario es válido, se copia a una carpeta con nombre determinado para la descarga (como un token), y ahi el usuario se lo descarga.
Ahora, si alguien sniffeando o como sea, obtiene el nombre de la carpeta, como NO hay autenticación HTTP de por medio, podrá igualmente descargar el archivo, a menos que haya otra configuración del server que lo limite. Lo del usuario con htuser no me va porque es precisamente una autenticación HTTP. Lo de autorizar una IP o host por archivo de configuración, para darle acceso a un directorio, tampoco me va ya que en realidad, necesito restartear Apache para que me tome los cambios, y yo de repente quiero darle una descarga a una IP, y que nadie más pueda. Habrá otro modo?? Tal vez una forma de modificar los permisos de Apache sobre un directorio en plena ejecución?? |