Terminado

Seguridad Y Control Acceso De Usuarios

Publicado el 15 Junio, 2020 en Programación y Tecnología

Sobre este proyecto

Abierto

Tenemos una plataforma de monitorización desarrollada en php (framework en Laravel y bases de datos SQL [phpMyAdmin]) y necesitamos realizar en la misma una serie de mejoras destinadas a incrementar el control de acceso y la seguridad de nuestros usuarios y del propio sistema. Nuestra plataforma está centrada principalmente en monitorización de parámetros de energía.
Disponemos de un servidor principal para el acceso de los clientes, y de un segundo servidor destinado a pruebas y desarrollo de mejoras, donde existen varias copias del proyecto a las cuales tienen acceso distintos desarrolladores, para que los distintos profesionales puedan trabajar sin interferir con otros desarrollos paralelos.

Buscamos colaboradores a largo plazo para que puedan trabajar también en futuros desarrollos y que aporten experiencia al proyecto.
___________________________________________________
alcance de los trabajos
•    permitir un único usuario activo en la web a un mismo tiempo. Actualmente, con los mismos datos de acceso de un usuario pueden estar logueadas varias personas a un mismo tiempo, es necesario corregir esto.

•    Control del tiempo de inactividad. Establecer un sistema de tal forma que se ejecute automáticamente un loggout cuando un usuario esté inactivo durante más de 5 minutos
•    Intentos de acceso con contraseña errónea. Cuando un usuario intente acceder al sistema e introduzca una contraseña errónea al menos 3 veces (el sistema también le irá indicando te quedan dos intentos, un intento ….)
. Una vez superados los tres intentos, le aparecerá un mensaje que le indicará … “Debe esperar 60 segundos para intentar acceder de nuevo o puede restablecer su contraseña a través del correo electrónico recibido”, además, el sistema le enviará de forma automática un correo electrónico al usuario notificándole el hecho, la ip desde la cual se intentó conectar y su geolocalización, el número de intentos, la hora, etc y dándole la opción de restablecer la contraseña vía email (como ya existe en la zona de inicio con “restablecer contraseña”, también recibiremos copia de ese correo nosotros). Una vez pasados los 60 segundos, si el usuario no ha restablecido su contraseña, tendrá dos intentos más, y al 5º intento de acceso con contraseña errónea (los 3 anteriores + 2 más), se bloqueará el acceso de ese usuario de forma automática y se le abrirá una ventana informándole que para restablecer su contraseña debe contactar con …. “Teléfono e email” (y además el usuario recibirá un correo electrónico indicándole lo mismo, nuevamente con todos los registros de intentos de acceso con sus correspondientes datos de ip, etc y también recibiremos copia nosotros).
Si es posible utilizar también un envío alerta al teléfono móvil del usuario (si este está almacenado)
•    Registro de accesos. En los servidores ya existe un registro de accesos, se puede utilizar este o generar unas tablas en una base de datos independiente, con acceso a todos los usuarios del localhost, con el registro de accesos nuevo, con IP, dirección, hora de entrada y salida, etc (esta información ya se almacena en la base de datos general). Cuando un usuario acceda desde una ip distinta a las que habitualmente accede (debe existir y consultarse un registro), recibirá un email solicitándole confirmación e indicándole que “ha accedido al sistema desde la ip … con fecha, hora ….
Confírmanos por favor si eres tu?)
•    Informes registro de accesos. Desde su Área de Cliente tendrá la opción de descargarse un informe con el registro de accesos realizados con su usuario, donde figure de forma lo más precisa posible todos los accesos, ips, geolocalización, horas, etc.

Contexto general del proyecto

Todos los trabajos deben realizarse sobre el propio servidor, para lo cual se facilitará un acceso mediante ftp y un dominio para el acceso web (con un usuario y contraseña), para probar los cambios que se vayan realizando. Además, durante tiempo limitado, se le podrá dar accesos de super usuario para la realización de cambios en bases de datos o accesos a registros a través de Plesk.

Categoría Programación y Tecnología
Subcategoría Programación Web
¿Cuál es el alcance del proyecto? Cambio mediano
¿Es un proyecto o una posición? Un proyecto
Actualmente tengo Tengo las especificaciones
Disponibilidad requerida Según se necesite
Roles necesarios Programador

Plazo de Entrega: 10 Julio, 2020

Habilidades necesarias