我为受密码保护的页面制作了用户身份验证脚本。
在我的脚本的第一个版本中,我首先检查用户名和密码是否与数据库中的用户名和密码匹配,如果是,请设置$ _SESSION ['user_connected']变量以及$ _COOKIE ['user_connected' ]变量为TRUE。我的index.php文件是通过验证是否设置了$ _COOKIE ['user_connected']来启动的,然后绕过数据库检查是否为真。
然后我意识到用户可以访问cookie,有人可以在访问网站之前将$ _COOKIE ['user_connected']设置为TRUE,然后就会出现混乱。但是$ _SESSION变量怎么样?如果用户已连接,我可以安全地使用它们来检查整个网站吗?
tl; dr:用户可以修改$ _SESSION变量吗?
答案 0 :(得分:8)
没有
它们存储在服务器上,只能由服务器上运行的脚本编辑。
用户只获取一个标记,用于标识与之关联的数据包。
答案 1 :(得分:5)