如何安全地刷新用户数据库中"last seen"记录



我正在尝试设计ZF2应用程序的一个特定模块,该模块显示当前在线的用户。

我的想法:

在数据库中有一个lastSeen列。要显示当前在线的用户列表,只需按时间戳搜索(例如:当前时间的90秒)

如果有用户登录,我计划设置一个事件侦听器,这样,一旦控制器调度完成,它就会更新当前用户的lastSeen字段。当他们注销时,它将清除lastSeen字段。

当用户空闲时,我计划使用JavaScript每隔60秒左右轮询一次服务器,以确保记录不断刷新。

三个问题:

  1. 这样行吗?(如果没有,为什么不呢?)
  2. 你能看到任何潜在的安全漏洞吗
  3. 对于JavaScript,是否需要某种csrf保护?如果是,我该如何处理

我非常关心安全问题,所以我真的很想知道我在这里是否缺少了任何可能会打开安全漏洞的东西。

Javascript刷新不是强制性的:lastSeen是一个时间戳,因此您可以计算一个限制,超过该限制用户将不会被视为在线。

最新更新