2017-08-01 68 views
0

Web应用程序应该超时一个用户会话& N分钟后将其注销。我不知道N是什么,或者会话超时注销机制是如何实现的。如何立即导致会话超时退出?

我想通过立即引起超时来测试会话超时会发生什么。有没有办法对前端进行修改,以便立即导致超时,或者是否需要更改后端以引起即时超时?

+1

如果在超时时间内存在任何安全问题,那么从前端触发它就会不够充分 - 任何具有一定知识的不良行为者都可能会绕过您正在做的任何事情来触发即时会话超时。 –

+0

请参阅https://stackoverflow.com/questions/33233152/cannot-clear-session-using-javascript-in-jsp –

回答

0

通常,这应该在后端实现。在大多数Web服务器或App Server上,用户会话存储在缓存系统(如memcached或redis)中。当用户登录时,我们将会话ID(cookie)存储到缓存中。同时,您可以在此密钥上设置到期时间,届满后会话ID将从缓存中删除。

当用户请求服务器时,该请求将以cookie为标识会话。你可以在这个时候更新到期时间。当会话超时和密钥被删除时,新的请求到来,它将被重定向到登录页面。