目前我的一位朋友和我一起在一个网站上工作。我们的登录系统已关闭,但正在使用会话。我,我自己,一直使用cookie登录,虽然我的朋友更喜欢会话。 我一直告诉他我们应该有两个或更多会话,我们可以与数据库进行比较,以确保它是准确的用户,而不是某人以某种方式欺骗ID。
例如:
$_SESSION['id'] = $YourId;
$_SESSION['salt'] = $SomethingElseTheDatabaseHas;
这使得它更安全,而不仅仅是数据库可以与之比较的一个会话。
答案 0 :(得分:8)
使用多个会话变量来存储信息对安全性没有任何作用,因为会话数据存储在服务器端。客户端对会话唯一了解的是它存储在cookie中的会话ID。服务器使用会话ID为用户查找数据。如果你使用存储在cookie中的哈希来识别用户,你也可以使用会话,因为这基本上做同样的事情,但是更容易使用用户的数据。
我不确定使用cookie来存储数据到底是什么意思,但如果你的意思是客户端会有一个cookie,其中包含服务器用于身份验证的用户ID,那么你应该立即重写它,因为它基本上是允许用户成为他们想要的任何人。