禁用cookie时使用会话?

时间:2012-12-14 19:19:25

标签: php html session cookies sessionid

我必须制作一个时间表系统,并且我已经在页面中登录了,但是我需要使用会话来了解登录,如果他们仍然登录但是cookies必须被禁用我已经尝试将SessionID保存到MySQL数据库,但我不知道如何在另一个页面上检索该会话ID,所以任何想法都会有帮助吗?不确定我是否也在正确的行上

1 个答案:

答案 0 :(得分:2)

您需要通过网址传递会话ID,如下所示:

http://local.domain/index.php?sessionID=7387837rhdfjfytyfegwfvkewbf

显然,上面的GET请求会使会话ID非常明显。实际上,在正常情况下,只有用户自己会看到它。因此,安全隐患并不是非常糟糕,但它们是恶意的,可以欺骗会话。

使用此方法的提示:

  • 请勿使用增量会话ID(100,101,102) - Generate random ID's
  • 虽然您可以在每个页面上使用POST请求,但它无助于安全性,并且可能会扰乱/对抗您的用户(请按后退按钮)
  • 仍然使用$_GET中的唯一会话ID作为密钥
  • 在数据库中维护您的会话
  • 确保会话超时,快速。每次刷新都会更新last_access时间,以确保活跃用户不会超时。