Cómo proteger con contraseña un sitio web o una sola página

Cómo proteger un sitio web con contraseña

Cómo proteger con contraseña un sitio o página web (opciones reales) | We.Inc

Protege con contraseña una página o un sitio entero de la forma que realmente funciona: Basic auth en el servidor, la contraseña de página de tu hosting o creador, o cuentas de miembros, y por qué fallan las barreras hechas solo con scripts.

Una comprobación de contraseña real ocurre en el servidor antes de enviar la página. Usa el ajuste de contraseña de página de tu hosting o creador de sitios, la autenticación HTTP Basic en Apache o Nginx, o cuentas de miembros de verdad. Una casilla de contraseña escrita en JavaScript solo oculta la página en el navegador; el contenido llega igualmente y cualquiera puede leer el código fuente.

Formas de poner una contraseña a un sitio

Escribe un nombre de usuario y una contraseña para ver la cabecera Authorization exacta que envía un navegador con la autenticación Basic, y lo fácil que es volver a convertirla en texto plano. Muestra por qué Basic auth solo debe usarse con HTTPS. La codificación se hace en tu dispositivo; no se envía nada.

Preguntas frecuentes

¿Puedo proteger una página con contraseña solo con HTML?

No. HTML no tiene forma de comprobar una contraseña. Todo lo que pongas en el archivo lo descarga cada visitante, así que la comprobación tiene que hacerse en el servidor o en la plataforma.

¿Es segura la autenticación HTTP Basic?

Solo con HTTPS. El RFC 7617 señala que la contraseña viaja por la red en texto claro, porque Base64 es una codificación, no un cifrado, y dice que el esquema no debe proteger información sensible sin algo como HTTPS.

¿Cómo protejo una página con contraseña en WordPress?

Abre la página o la entrada, cambia Visibilidad a Protegida con contraseña, introduce una contraseña y actualiza. Los visitantes ven el título y una petición de contraseña en lugar del contenido.

¿Puedo proteger un sitio de WordPress entero?

La propia documentación de WordPress dice que ocultar el sitio completo no forma parte del núcleo, y remite a plugins o a reglas de servidor como .htaccess.

¿Qué muestra el navegador con Basic auth?

El servidor responde con 401 y una cabecera WWW-Authenticate. El navegador pide entonces un nombre de usuario y una contraseña y repite la petición con una cabecera Authorization.

Por qué fallan las barreras hechas solo con scripts

Elegir entre las opciones reales

Configuraciones de servidor que protegen de verdad una carpeta

Crea el archivo de contraseñas con la herramienta htpasswd que viene con Apache (por ejemplo htpasswd -c /etc/apache2/.htpasswd client) y guárdalo fuera de la carpeta web pública.

Apache: .htaccess en la carpeta que quieres proteger

Require valid-user deja pasar a cualquiera que figure en el archivo de contraseñas.

Nginx: proteger una location

Nginx lee el mismo formato de archivo htpasswd. Recarga Nginx después de editar.

Lo que no debes hacer: una barrera en JavaScript

Se muestra para que sepas reconocerla. La contraseña y el contenido están ambos en el archivo que descarga cada visitante.

Lo que envía Basic auth

Nombre de usuario

Contraseña

El nombre de usuario no puede contener dos puntos, porque los dos puntos lo separan de la contraseña.

Cabecera que el navegador envía con cada petición

Decodificada por cualquiera que vea la petición

Base64 no es cifrado. Sin HTTPS, esta cabecera delata la contraseña.

Empieza gratis · Sin tarjeta de crédito

Relacionado: Guías

Producto

Para quién es

Funciones

Recursos

Empresa

Mapa del sitio