> Faqs > Implementar una capa de autentificación con PHP

Implementar una capa de autentificación con PHP

Desearía poder introducir en mi sitio un script que me permita gestionar el acceso de mis visitantes a determinadas páginas a partir de la introducción de un nombre de usuario y una clave.

Respuestas

Existen múltiples estrategias para llevar a cabo este tipo de scripts.

La primera que no te recomendamos actualmente es mediante el uso de las variables globales $PHP\AUTH\USER y $PHP\AUTH\PW. Esta alternativa hace saltar la clásica ventana del navegador que solicita el nombre de usuario y contraseña. (no sé si esto siquiera seguirá funcionando en PHP 8 en adelante)

Las otras dos posibilidades es el empleo de las cookies o de las sesiones.

Si no conoces muy bien estas técnicas, puedes aprender lo necesario en estos dos artículos de nuestro manual de PHP:
Cookies
Sesiones

Personalmente, creo que el uso de las sesiones resulta el más adecuado; por un lado por razones de seguridad y por otro debido a que las cookies no son siempre aceptadas por todos los visitantes.

Como práctica te recomiendo echar un vistazo al manual del Sistema de autentificación con PHP, donde podrás ver ejemplos en los que inspirarte para hacer tu propio sistema.

También existen aplicaciones desarrolladas en PHP para estos propósitos. He hecho, si trabajas con un framework del estilo de Laravel podrás usar todo el tema de autenticación que el propio framework te proporciona, con lo que ahorrarás mucho tiempo y tu aplicación será posiblemente más segura que si haces tu propio sistema a mano.

Rubén Alvarez