Foros del Web » Programando para Internet » PHP »

Seguridad para bajar archivos

Estas en el tema de Seguridad para bajar archivos en el foro de PHP en Foros del Web. Hola, quisiera saber si alguien tiene idea de que opciones hay en PHP para proteger los archivos o los directorios. Es decir para que solo ...
  #1 (permalink)  
Antiguo 21/10/2005, 14:57
 
Fecha de Ingreso: octubre-2004
Mensajes: 5
Antigüedad: 13 años, 2 meses
Puntos: 0
Seguridad para bajar archivos

Hola, quisiera saber si alguien tiene idea de que opciones hay en PHP para proteger los archivos o los directorios. Es decir para que solo usuarios con permiso puedan bajar los archivos.
Gracias
  #2 (permalink)  
Antiguo 21/10/2005, 15:11
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
La seguridad a nivel de directorios no la dá PHP sino tu servidor HTTP que uses .. no sé si Apache? o IIS? .. u otro.

En Apache lo puedes hacer vía .htaccess

Desde PHP .. puedes crear gestores de contenido .. es decir, script's PHP que "entreguen" tu archivo solcitado, y por ende el mismo script puede aplicar todo tipo de seguridad y validación de usuarios.

En este caso .. tus archivos deben ser protegidos a su vez por otro .htaccess que sólo permita acceso desde el própio servidor (para que sólo lo pueda acceder un script PHP que se va a ejecutar ahí mismo) o bien subir tus archivos fuera de tu "document root" para que no queden al alcance de una llamada por el URL tipo: http://www.tal.tal/archivos/archivo.tal

No sé que método te irá mejor para tu caso, el más simple de implementar es vía ".htaccess" (y .htpassword para el tema de crear usuarios que puedan entrar con autentificación HTTP). La versión PHP ofrece otras mejoras al control de que archivos gestionas y de gestión de usuarios preferentemente, pero .. todo ha de pasar por PHP.

Un saludo,
  #3 (permalink)  
Antiguo 21/10/2005, 16:16
 
Fecha de Ingreso: octubre-2004
Mensajes: 5
Antigüedad: 13 años, 2 meses
Puntos: 0
Gracias Cluster ! Buenisimo Saludos
  #4 (permalink)  
Antiguo 21/10/2005, 17:28
 
Fecha de Ingreso: febrero-2005
Mensajes: 670
Antigüedad: 12 años, 10 meses
Puntos: 0
¿Haciendo CHMOD 700 al directorio en cuestión no serviría? Y después generas un script en php para descargar x archivo que realize todas las validaciones necesarios.

No sé, lo tengo probar. Al hacer chmod 700, teoricamente, no se podrían descargar los archivos desde http. Pero no sé si php puede acceder a ellos.

Suerte
Fede
__________________
Federico H. García
Desarrollo Web
www.federicog.com.ar
  #5 (permalink)  
Antiguo 24/10/2005, 06:44
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por thunder.scripts
¿Haciendo CHMOD 700 al directorio en cuestión no serviría? Y después generas un script en php para descargar x archivo que realize todas las validaciones necesarios.

No sé, lo tengo probar. Al hacer chmod 700, teoricamente, no se podrían descargar los archivos desde http. Pero no sé si php puede acceder a ellos.

Suerte
Fede
Pruebalo .. pero el permiso del archivo decide que usuario de ese servidor puede abrir el archivo. Si tu restringes el acceso vía CHMOD a un archivo en el servidor al usuario que usa tu servidor HTTP (sea Apache o el que uses) o si usas PHP bajo CGI al usuario que use PHP ... no podrás hacer una llamada por HTTP (por el "programa" que accede a esos archivos para entregartelos a tu cliente) .. Pero por lo mismo .. ni nadie los podrá bajar .. ni tan siquiera PHP podrá acceder a ellos para abrirlo, en definitiva .. quedará inaccesible.

Por eso .. con el ".htaccess" lo que se hace es decir que "host" puede acceder al archivo . limitando sólo peticiones desde "local" (desde el mismo servidor donde corre PHP y están los archivos) .. así tus scripts PHP pueden acceder a esos archivos pero no un cliente directamente; siendo en ese script PHP donde implemetas tu código de validación necesario .. lees el archivo y lo entregas para desarcargar o resto de proceso si corresponde.

Un saludo,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:10.