如何让用户始终在没有无限会话的情况下登录

时间:2017-11-26 23:20:30

标签: security session cookies https

想知道这通常是如何实现的。始终登录网站的示例包括StackOverflow,Facebook和Twitter。看起来你必须让一个后台作业在会话到期之前重新生成会话ID(假设你通过ID在数据库中存储会话)(假设你告诉cookie在5分钟后到期)。所以每5分钟会重新生成一次以保持登录状态,同时保证其安全。但在走这条路之前,我想知道其他人是如何实施的,或者是否有更标准的方法。

1 个答案:

答案 0 :(得分:0)

据我所知,这是在大多数网站上完成的。

Cookie设置了访问令牌和有限生命(当然,如果用户检查'保持我已登录')。如果用户在该时间跨度内访问该站点,则他将登录并生成当前会话(来自服务器)。并且,cookie时间跨度重新初始化到预定的时间。

比如说:我登录一个网站example.com并检查它的复选框,让我登录。现在,只要我点击登录按钮并由服务器验证,服务器就会生成一个会话(对于当前会话)和cookie(对于将来的会话),时间限制为1个月。现在,如果我在第29天回来并打开example.com,我将使用cookie中设置的令牌自动登录。 cookie将我的信息发送到服务器,服务器将生成我当前的会话。最重要的是,服务器会将cookie重置为一个月后过期。 如果,我在30天后返回网站,那么cookie将迫使我再次登录。

我希望我的意见对你有所帮助。