Como su sitio puede consultarse en modo http, asumo que no contiene contenido altamente sensible. La elección de HTTP frente a HTTPS es una cuestión de intercambio de seguridad por rendimiento:
- todo lo que se puede hacer en HTTP se puede hacer en HTTPS y usted obtiene una mayor seguridad
- HTTPS consume más recursos
Como regla general, use HTTPS si puede ofrecer suficientes recursos y HTTP si el valor de los datos es bajo.
Es admisible mezclar HTTP para páginas normales y HTTPS para páginas confidenciales, como el intercambio de credenciales proporcionado:
- el servidor rechazará cualquier solicitud HTTP a una página segura = > Si una página que contiene enlaces HTTPS se vuelve a escribir con enlaces HTTP, obtendrá un redireccionamiento a la página HTTPS o un error
- la seguridad general del sitio es a nivel HTTP
- confía en sus usuarios para controlar que las páginas confidenciales provengan de su sitio
Lo que debe tener en cuenta es que tan pronto como la sesión utiliza una cookie insegura (modo HTTP) no debe confiar en esa sesión para acceder a información confidencial.
Esto es correcto: consulta HTTP = > enlace a HTTPS para iniciar sesión = > nueva sesión después de iniciar sesión = > Consulta HTTP: la seguridad general es baja-media porque la cookie de sesión es insegura y usted solo protege las credenciales
Pero esto es malo: inicio de sesión HTTPS = > Consulta HTTP de páginas no sensibles = > Consulta HTTPS / modificación de datos sensibles
porque aquí el nivel de seguridad de la sesión se ha reducido a HTTP y todavía se usa para operaciones confidenciales.
El mínimo debe ser:
... = > Operaciones HTTP = > Control de credenciales HTTPS o de una cookie segura = > nueva sesión = > Operaciones HTTPS ...
El mayor riesgo aquí es que debe informar a sus usuarios que la página de inicio de sesión es especial y que deben controlar que el pequeño candado está presente y la url está en el dominio correcto. El riesgo está aquí:
- un atacante logró obtener una copia de su página de inicio de sesión
- puede enviar a uno de tus usuarios a una página que controla
- el usuario escribe sus credenciales
= > el atacante ha obtenido todos los accesos permitidos al usuario
TL / DR: tener solo una parte del sitio (incluida la página de inicio de sesión) en HTTPS solo es aceptable si:
- la página de inicio de sesión solo está accesible en HTTPS y crea una nueva sesión
- cualquier transición de HTTP a HTTPS requiere un control de credenciales (o de una cookie segura especial)
- todos sus usuarios controlan que la URL de la página de inicio de sesión es correcta antes de ingresar sus credenciales