我为受密码保护的页面制作了一个用户身份验证脚本。
在我的脚本的第一个版本中,我首先检查用户名和密码是否与数据库中的匹配,如果是,则将 $_SESSION['user_connected'] 变量和 $_COOKIE['user_connected'] 变量设置为真的。我的 index.php 文件首先验证是否设置了 $_COOKIE['user_connected'],然后绕过数据库检查是否为真。
然后我意识到用户可以访问 cookie,并且有人可以在访问该站点之前简单地将 $_COOKIE['user_connected'] 设置为 TRUE,然后就会出现混乱。但是 $_SESSION 变量呢?如果用户已连接,我可以安全地使用它们来检查整个网站吗?
tl;dr:用户可以修改 $_SESSION 变量吗?