Este post fue probado por expertos para asegurar la veracidad de nuestro post.
Solución:
django-session-security toma nota de la actividad del usuario en función del lado del servidor y eventos de javascript como mousemove, keypress, etc., etc. Además, advierte al usuario antes de que expire la sesión e intenta no para caducar la sesión (¿dónde puede haber alguna actividad desde otra pestaña del navegador?).
Simplemente instálelo y configúrelo settings.SESSION_SECURITY_EXPIRE_AFTER=1800
. También podría establecer settings.SESSION_SECURITY_WARN_AFTER=1740
.
Puedes actualizar la sesión de un usuario cuando accede a tu sitio. Por ejemplo, en un middleware, esta sesión forzada se establecerá nuevamente.
class ActivateUser(object):
def process_request(self, request):
if request.user.is_authenticated():
request.session.modified = True
Como una actualización sobre este tema. Django ahora tiene la configuración SESSION_SAVE_EVERY_REQUEST que lo hace mucho más fácil.