|
.
.
.
.
.
|
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
| Lewis|1524
Lenny|2254
Sofi|5487
Viky|3254 |
|
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
// 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;
}
$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 -->
<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>
|
Mglnet te Recomienda estos
Productos
Aumenta tus Ingresos- Usa Google
AdSense
|
|