Foros del Web » Programando para Internet » PHP »

Restringir acceso vía web

Estas en el tema de Restringir acceso vía web en el foro de PHP en Foros del Web. Buenas, Tengo una consulta rápdida: He creado varias clases con PHP, y me gustaría que no fuesen accesibles vía web (es decir, suponiendo que tengo ...
  #1 (permalink)  
Antiguo 03/08/2012, 01:39
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años, 6 meses
Puntos: 33
Restringir acceso vía web

Buenas,
Tengo una consulta rápdida:

He creado varias clases con PHP, y me gustaría que no fuesen accesibles vía web (es decir, suponiendo que tengo las clases en la carpeta ./Clases, que al poner en el navegador www.mipagina.com/Clases/Clase1.php redirigiera a algún otro lado).

Yo había pensado en poner al principio de la clase (antes de la sentencia Class) una redirección con header o algo así... pero no se si funcionaría.

¿Alguien me podría orientar un poco?

Gracias.
  #2 (permalink)  
Antiguo 03/08/2012, 01:48
 
Fecha de Ingreso: abril-2012
Mensajes: 590
Antigüedad: 12 años, 6 meses
Puntos: 58
Respuesta: Restringir acceso vía web

Bueno si lo que te preocupa es que puedan acceder a tu código PHP no te preocupes porque es imposible salvo que accedan desde el FTP.

Cuando alguien accede a una página PHP no está por detrás el código, sino el resultado de ejecutar ese código, el cual se ejecuta en el servidor no en el cliente. Por lo que resulta imposible que vean el citado código.

Si me equivoco que alguien me corrija.
  #3 (permalink)  
Antiguo 03/08/2012, 01:55
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años, 6 meses
Puntos: 33
Respuesta: Restringir acceso vía web

Cierto, eso desde luego, ya que PHP es un lenguaje del lado del servidor.

Pero eso no quita que se pueda "acceder", por así decirlo, a la ruta de la clase. Esto puede proporcionar cierta información a un posible atacante (llamadme paranoico si queréis), ya que puede saber qué rutas están y cuales no.

Un ejemplo sencillo: facebook tiene una ruta a la que accede como facebook(.)com/album.php, pero si intentas acceder con tu navegador te sale un error 404 (aunque en realidad esa ruta SI existe)

espero que esto aclare un poco más el concepto que quiero plasmar.

Gracias por tu respuesta.
  #4 (permalink)  
Antiguo 03/08/2012, 02:34
 
Fecha de Ingreso: abril-2012
Mensajes: 590
Antigüedad: 12 años, 6 meses
Puntos: 58
Respuesta: Restringir acceso vía web

En ese caso podrías usar las sesiones para verificar eso.

Aún no las controlo mucho porque no he necesitado usarlas pero podrías hacer algo tan sencillo como comprobar si el que intenta acceder a esa página tiene iniciada un sesión con nombre "admin" o cualquier cosa que ninguno de tus usuarios vaya a tener, y ya está.

Échale un ojo a las sesiones.

No se si es así como funciona porque como digo apenas las usé y te lo digo de memoria pero la idea sería algo así:

Código PHP:
if (!isset($_SESSION['admin'])
{echo 
"no tienes permiso para acceder";}
else
{
echo 
"te enseño la pagina";

O lo rediriges o lo que sea.
No se si es necesario hacer un session_start antes o no.

Etiquetas: restringir, vía
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 01:06.