Estoy desarrollando mi sitio usando sesiones del lado del servidor usando redis como backend para guardar la sesión.
Ahora el problema que me preocupa es si el usuario abandona el sitio web sin cerrar sesión. Me refiero a que el usuario simplemente cierra el navegador, lo que hace que se elimine la cookie.
Ahora la sesión de ese usuario todavía existe en el servidor y no se usará nuevamente ya que el nuevo inicio de sesión requiere la creación de una nueva sesión por razones de seguridad. Para evitar el caso en el que un pirata informático roba la cookie anterior y utilícela después de que el usuario vuelva a iniciar sesión con la misma ID de sesión anterior.
En esencia, el usuario abandona el sitio web sin cerrar sesión explícitamente y su sesión se eliminará después de cierto límite de tiempo de inaccesibilidad. Estoy pensando en el límite de tiempo de 30-60 minutos. También con cada nueva solicitud del usuario, su cookie también se actualizará para hacer un seguimiento de cuándo el usuario accedió por última vez al sitio.
Pero hoy en día, las personas dejan que el sitio permanezca abierto durante mucho tiempo sin acceder a él. Por ejemplo, los usuarios abren Facebook y Gmail en nuevas pestañas y se olvidan de ellas durante 2 o 3 horas y aún no se les pide que vuelvan a iniciar sesión.
¿Es seguro permitir que una cocinera de 2-3 horas acceda a la sesión? Mi preocupación es que alguien robe una cookie de usuario y la use 2-3 horas después.
Pensar en este tema también me ha obligado a cuestionar cómo Facebook gestiona la seguridad si el usuario puede usar una sesión en la que no tiene acceso a ella durante largos períodos de tiempo y aún permanece conectado. ¿O no es seguro para mí seguir conectado cuando no estoy accediendo a la sesión del sitio durante un período de tiempo más largo?
Puede darse el caso de que también exista algún mecanismo de ping mediante el cual los sitios realizan un seguimiento de los usuarios que tienen su sitio abierto en un navegador y cuando se cierra el navegador se les notifica y pueden funcionar en consecuencia.
Mi sitio web es una red social y necesita todas las funciones de seguridad y uso que una red social puede necesitar.
Soy nuevo en seguridad web y desarrollo web en general y puede ser el caso donde mis preguntas anteriores puedan parecer un poco básicas. Si cree que ese es el caso, señale una buena referencia donde pueda leer y encontrar respuestas a mi pregunta.