更改$ _SESSION变量中的数据

dan*_*iel 0 php cookies session

目前我在构造函数中有一个类存储变量$_SESSION.

有人告诉我不要存储user_id$_SESSION,因为这时用户可以更改ID到他喜欢的一个,然后从任何帐户自由地访问该网站.相反,我一直保存在session_id和创建一个具有链接表session_iduser_id.

我的问题是 - 操纵这些数据有多难?我的项目也有一个商店系统,我意识到我无法将商店的所有者ID存储在一个$_SESSION变量中.这将导致我至少每页查询数据库以获取数据.

存储此类信息的不安全程度如何$_SESSION?有没有人有更好的解决方案?

Pao*_*ino 8

谁告诉你这是错的; 用户无法更改存储在$_SESSION阵列中的数据.用户可以编辑的是使用sessionid设置的cookie,以便PHP可以识别该用户.但是,他们无法真正将其更改为另一个用户的sessionid.你运行的唯一危险是,如果有人以某种方式获取用户的sessionid cookie,在这种情况下,他们可以将登录用户作为您的网站,但除了一些IP检查之外,您无法做到这一点.