Tus Sugerencias
Agregar url
Agregar a favoritos
Recomendados
Mapa del Sitio
Mglnet en tu sitio
 INICIO
Crear un Archivo PHP
Variables
.
 Operadores en PHP 
Aritméticos
Comparación
Lógicos
.
Instrucciones en PHP
Condicionales
Bucles
Salida
Cadenas
.
Proceso de formularios
Envio y recepción 
Method GET y POST 
Envio de Email
.
 Seguridad 
Restringir acceso
Distinción de usuarios
.
Sesiones  (PHP4)
¿Qué son?
Inicialización
Error común
Carrito compra
 Seccion: Manuales - PHP
  Seguridad
   Restringir Acceso


En esta sección vamos a explicar cómo podemos restringir el acceso a según qué páginas, para que solo las personas autorizadas puedan acceder a ciertas partes del nuestro sitio web.

Atención: El acceso restringido a páginas usando las variables globales $PHP_AUTH_USER, $PHP_AUTH_PW y $PHP_AUTH_TYPE solo funciona si PHP ha sido instalado como un módulo de Apache, si ha sido instalado como un CGI los ejemplos de ésta sección no funcionarán.

Para conseguir la autentificación en las páginas usaremos el sistema de autentificación del protocolo HTTP, este sistema se basa en las variables globales $PHP_AUTH_USER y $PHP_AUTH_PW.

  • $PHP_AUTH_USER. Nombre de usuario introducido. 
  • $PHP_AUTH_PW. Contraseña introducida. 
Para que el navegador nos muestre la ventana de petición de nombre de usuario y contraseña basta con enviar la siguiente cabecera:
 
 
 
<?php // Manual de PHP
   if (!isset($PHP_AUTH_USER)) { 
      header('WWW-Authenticate: Basic realm="Acceso restringido"'); 
      header('HTTP/1.0 401 Unauthorized'); 
      echo 'Authorization Required.'; 
      exit; 
   } 
   else { 
      echo "Ha introducido el nombre de usuario: $PHP_AUTH_USER<br>"; 
      echo "Ha introducido la contraseña: $PHP_AUTH_PW<br>"; 
   } 
?> 

Esto provoca que se muestre la ventana de nombre de usuario y contraseña y los datos introducidos se asignen a las variables $PHP_AUTH_USER y $PHP_AUTH_PW.

A partir de aquí realizaremos las comprobaciones necesarias para asegurarnos que los datos introducidos son los correctos.

En el siguiente ejemplo pediremos autorización y comprobaremos si el nombre de usuario es Lewis y la contraseña 1524, si es así tendremos acceso al resto de la página.
 
 

<?php // Manual de PHP 
   if (($PHP_AUTH_USER!="Lewis") || ($PHP_AUTH_PW!="1524")) { 
      header('WWW-Authenticate: Basic realm="Acceso restringido"'); 
      header('HTTP/1.0 401 Unauthorized'); 
      echo 'Authorization Required.'; 
      exit; 
   } 
?>
<!-- Manual de PHP --> 
<html> 
<head> 
   <title>Ejemplo de PHP</title> 
</head> 
<body> 
Ha conseguido el acceso a la <B>zona restringida</B>. 
</body> 
</html> 


Mglnet te Recomienda estos Productos

Aumenta tus Ingresos- Usa Google AdSense



Google