A continuación se muestra una propuesta para tratar una situación de seguridad del sitio web. Me pregunto si parece factible, tanto desde el punto de vista técnico como de usabilidad. Quiero asegurarme de que la propuesta contenga errores evidentes.
- El sitio web
El sitio web en cuestión es un sitio web de la escuela donde los estudiantes pueden comprar varios artículos. Estos estudiantes obtienen una cuenta en el sitio web con un nombre de usuario y contraseña, que pueden usar para iniciar sesión. Una vez que inician sesión, tienen acceso a páginas protegidas con contenido privado que no están disponibles para el público en general.
- El problema de seguridad
Los propietarios del sitio web desean evitar una situación en la que un solo estudiante se registra en el sitio web, obtiene un nombre de usuario y contraseña, y luego hace circular esas credenciales a un círculo de amigos que luego pueden iniciar sesión en el sitio web e ilegalmente. Ver el contenido privado.
- La solución
La idea central que se nos ha ocurrido para resolver este problema de seguridad es permitir que cada estudiante inicie sesión en el sitio web solo en dos dispositivos. Una vez que un estudiante inicia sesión en dos dispositivos diferentes, están restringidos a esos dos dispositivos. Si luego intentan iniciar sesión en un tercer dispositivo, el sistema simplemente no les permitirá hacerlo. Entendemos que otros sitios web que ofrecen contenido privado, como Netflix, utilizan este enfoque.
- Implementación
Se me ocurren dos ideas para implementar la medida de seguridad anterior: la dirección IP y las cookies. Descartamos las direcciones IP que pueden cambiar, y elegimos cookies. Los sitios web como amazon.com permiten a sus clientes iniciar sesión una vez, y luego, cada vez que vuelven al sitio web, siempre son reconocidos. Esto es casi seguro que se logra a través de cookies.
Por lo tanto, cada vez que un estudiante inicie sesión, almacenaremos una cookie en su dispositivo. Y también almacenaremos esta cookie en nuestra base de datos bajo la cuenta de ese estudiante. Por lo tanto, cada vez que un alumno inicie sesión en cualquier dispositivo, verificaremos si el dispositivo en el que está ingresando actualmente contiene la cookie que hemos almacenado para ese alumno. Si no lo hace, sabremos que el estudiante está iniciando sesión en un dispositivo diferente. Por lo tanto, podremos saber cuántos dispositivos está intentando iniciar sesión el estudiante.
- Inconvenientes
Hemos identificado al menos tres posibles inconvenientes de este enfoque:
- Borrar cookies. Las personas pueden, por una variedad de razones, elegir borrar las cookies de su computadora.
- En ocasiones, es posible que una persona auténtica no tenga acceso a su dispositivo habitual y desee iniciar sesión en una computadora diferente.
- La gente compra nuevos dispositivos de vez en cuando.
- Estos son ejemplos de situaciones en las que un usuario de buena fe, por motivos legítimos, desea iniciar sesión, pero no podrá hacerlo debido a la restricción de seguridad de dos dispositivos del sitio web.
Tenemos algunas ideas sobre cómo integrar la lógica en el sistema para hacer frente a tales situaciones, que podemos implementar en el futuro, pero por el momento, sentimos que tales situaciones son lo suficientemente raras como para que no sea necesario. manejarlos programáticamente.
Más bien, por ahora, en el caso de que un estudiante esté bloqueado, recibirán una pantalla con un mensaje que explica por qué no les hemos permitido ingresar al sistema, y un botón en el que pueden hacer clic en el que generará automáticamente una correo electrónico a los administradores del sitio.
El correo electrónico les informará que un estudiante desea iniciar sesión en un tercer dispositivo. Los administradores pueden ponerse en contacto con el estudiante y, si están satisfechos de que la necesidad es de buena fe, podrán seguir los pasos del CMS para permitir la entrada del estudiante.
El tamaño del cuerpo estudiantil es lo suficientemente manejable para que el enfoque anterior sea viable.
- aviso justo
Informaremos a los estudiantes sobre estas medidas de seguridad cuando su cuenta se active para evitar sorpresas desagradables.