Autenticación combinada en Apache

Suele ser habitual tener que limitar el acceso a un determinado directorio del servidor web en base a la dirección IP del usuario o a unos datos de usuario y contraseña. Sin embargo hay situaciones en las que es necesario combinar estas dos opciones para disponer de un método de autenticación combinado, en el que se autentifiquen algunos usuarios mediante su dirección IP y otros mediante usuario y contraseña.

Una forma de hacer esto sería disponer de un archivo «.htaccess» como el siguiente.

order allow,deny
 
allow from 192.168.0.1
allow from 212.6.25.135
allow from 87.59.64.123
 
AuthName "access"
AuthType Basic
AuthUserFile /www/example.com/data/.htpasswd
require valid-user
 
satisfy any

Mediante las 3 primeras líneas de allow indicamos que permitimos la conexión a los usuarios que lleguen desde esas direcciones ip, y mediante las 4 siguientes que requerimos que el usuario esté definido en el archivo /www/example.com/data/.htpasswd. Si lo dejásemos así estaríamos exigiendo que los usuarios que se conectasen desde las direcciones ip indicadas tendrían que indicar también un login y un password, sería algo así como una doble autenticación. Para conseguir lo que queremos utilizamos la última línea satisfy any, que indica que es suficiente con satisfacer cualquiera de los requisitos para que el usuario sea autenticado.

Twitter Digg Delicious Stumbleupon Technorati Facebook Email

Los comentarios están cerrados.