用户可以访问$ _SESSION变量吗?

Luk*_*kmo 0 php session-variables

我为受密码保护的页面制作了用户身份验证脚本.

在我的脚本的第一个版本中,我首先检查用户名和密码是否与数据库中的用户名和密码匹配,如果是,请设置$ _SESSION ['user_connected']变量以及$ _COOKIE ['user_connected']变量真正.我的index.php文件是通过验证是否设置了$ _COOKIE ['user_connected']来启动的,然后绕过数据库检查是否为true.

然后我意识到用户可以访问cookie,有人可以在访问网站之前将$ _COOKIE ['user_connected']设置为TRUE,然后就会出现混乱.但是$ _SESSION变量怎么样?如果用户已连接,我可以安全地使用它们来检查整个网站吗?

tl; dr:用户可以修改$ _SESSION变量吗?

Que*_*tin 8

没有.

它们存储在服务器上,只能由服务器上运行的脚本编辑.

用户只获取一个标记,用于标识与哪些数据包相关联.


Bon*_*ono 5

可能重复:恶意用户是否可以编辑$ _SESSION?

$_SESSION 服务器端,一旦设置就无法更改(由用户)

另外,看看这个问题