Definición de tiempo de espera inactivo

1

Debo ejecutar el temporizador de tiempo de espera de inactividad de la sesión

  1. Desde el inicio de la primera solicitud hasta el inicio de la siguiente solicitud, o
  2. ¿Desde el final de la primera solicitud hasta el inicio de la próxima solicitud?

Un poco de contexto: tengo un tiempo de espera de inactividad de 10 minutos en una aplicación de API web. Algunas de las solicitudes llevan mucho tiempo (por ejemplo, alrededor de 8 minutos). Si lo hago 1., los usuarios pierden efectivamente 8 minutos de su cuota inactiva en estas solicitudes. Si lo hago 2., no me sienta bien con la definición de inactivo: el usuario ha estado (forzado a estar) inactivo desde que inició la primera solicitud.

Me inclino a 2. debido a la UX, pero aparte de la definición, ¿hay alguna manera 2. podría ser mal utilizada?

Creo que el tiempo de espera de inactividad se ha implementado por la mayoría de los motivos como en enlace y estoy bien para cualquier Las respuestas se centran en estos requisitos (desafortunadamente, no puedo encontrar ningún requisito formal que respalde mi creencia: el sistema actual se basa en un sistema muy antiguo, cuyos requisitos se pierden en los anales del tiempo. Por la misma razón, yo No estoy seguro de por qué 10 minutos y no 9 u 11). Dicho esto, tengo curiosidad por saber si hay algún tipo de lagunas de seguridad que puedan utilizar 2. y no 1.

Nota: también tengo un tiempo de espera absoluto desde el inicio de la sesión

    
pregunta potatopeelings 27.11.2017 - 02:51
fuente

1 respuesta

1

Esto depende de lo que se debe lograr con el tiempo de espera. Es posible que se agote el tiempo de espera de una sesión si el usuario no interactuó con el sitio durante algún tiempo. O puede que se agote el tiempo de espera de la sesión si el usuario no ha visitado el sitio durante algún tiempo, pero no se agote el tiempo de espera si el sitio todavía está abierto dentro del navegador. La primera forma es más segura, pero la segunda es más cómoda para el usuario (los tiempos de espera más largos también son más cómodos). La ponderación de la seguridad frente a la usabilidad depende de su caso de uso específico.

Si el tiempo de espera de la sesión debe activarse en función de la actividad real del usuario, entonces debe restablecerse solo si se encuentra dicha actividad, es decir, al inicio de una solicitud HTTP causada por la actividad del usuario.

Si el tiempo de espera de la sesión debería basarse en la actividad del navegador (es decir, si el sitio web todavía está abierto en el navegador), se puede restablecer siempre que los datos se intercambien con éxito con el navegador. Este intercambio exitoso significa que el sitio web todavía está abierto dentro del navegador y que el navegador tiene conexión a la red, pero no significa que el usuario realmente esté haciendo algo con el sitio (es decir, podría estar alejado del teclado).

    
respondido por el Steffen Ullrich 27.11.2017 - 07:33
fuente

Lea otras preguntas en las etiquetas