image
Valora:   3.85/5 de 54
Inicio » PHP » Manual de PHP » Seguridad




Distinción de usuarios

En la anterior página todo el mundo que tenía acceso a la parte restringida entraba con el mismo nombre de usuario y contraseña, esto evidentemente no es una buena solución, es mejor que cada persona tenga un nombre de usuario y contraseña, ya que de esta forma podemos inhabilitar a un usuario sin ver comprometida la seguridad de nuestro sitio.

En esta página veremos la forma de realizar esto, teniendo un fichero separado con los nombres de usuario y las contraseñas válidas. Dicho fichero podría tener el siguiente formato: nombre_de_usuario|contraseña. Por ejemplo:

passwords.txt
Joe|1235
Pedro|qwer
Noe|Gty45e
kermit|rwe4v

En este ejemplo se pide la autorización al comienzo de la página si no se ha establecido con anterioridad y se comprueba con el fichero de contraseñas que hemos llamado passwords.txt, si el nombre de usuario y contraseña coincide con alguna entrada del fichero se nos permite ver el resto de la página.

<?php echo "<!--81952264012846599-->"; ?>
<?php echo "<!--965239281882821806-->"; ?>
<?php // Manual de PHP de WebEstilo.com
    if (!isset($PHP_AUTH_USER)) {
      header('WWW-Authenticate: Basic realm="Acceso restringido"');
      header('HTTP/1.0 401 Unauthorized');
      echo 'Authorization Required.';
      exit;
   }
   
   $fich = file("passwords.txt");
   $i=0; $validado=false;
   while ($fich[$i] && !$validado) {
      $campo = explode("|",$fich[$i]);
      if (($PHP_AUTH_USER==$campo[0]) && ($PHP_AUTH_PW==chop($campo[1]))) $validado=true;
      $i++;
   }

   if (!$validado) {
      header('WWW-Authenticate: Basic realm="Acceso restringido"');
      header('HTTP/1.0 401 Unauthorized');
      echo 'Authorization Required.';
      exit;
   }
?>

<!-- Manual de PHP de WebEstilo.com -->
<html>
<head>
   <title>Ejemplo de PHP</title>
</head>
<body>
Ha conseguido el acceso a la <B>zona restringida</B> con el usuario <?php echo $PHP_AUTH_USER?>.
</body>
</html>

Ejecutar ejemplo Ver código fuente







Comparte


Aportaciones de usuarios A�adir una aportaci�n



 
Valid HTML 4.01!
Última modificación:31 de Agosto de 2017. Spain - Espa�a.
© 1998-2004 por . Todos los derechos reservados.