1
if($_POST['user'] == 'anita' && $_POST['pw'] == '123')
{
    $_SESSION['username'] = $_POST['user'];
    echo "Welcome, " . $user;
    $loggedin = true;
}else
{
    die('Log in details incorrect.');
}

if(isset($_SESSION['username']))
{
   // Show website edit menu
}

我正在创建一个网站,我正在考虑添加一个小型自制 CMS 供我的客户使用,这样她就可以自己更新网站。

这是保存某人详细信息的安全方法吗?我可以检查 $_SESSION['username'] 是否设置为验证用户是否已登录?

4

3 回答 3

2

会话文件通常纯粹保存在服务器上,用户唯一可以直接访问的是会话 cookie。该 cookie 通常也只有会话的 ID,没有其他内容。

除非恶意用户通过其他方式访问会话存储系统(文件、数据库)而不是您的代码,否则他们无法更改会话中存储的任何内容。

于 2012-11-01T21:15:26.927 回答
1

嗯,是。在服务器端设置会话非常安全,因为这意味着黑客必须访问服务器文件写入,或者在您的客户端代码中发现一个非常可怕的错误,导致文件重写。

只需做一些研究:会话固定以及如何防止它,并尝试在 CMS 端使用 SSL。

于 2012-11-01T21:15:24.010 回答
0

一般来说,会话​​是安全的。但是也有容易被劫持的。会话由存储在服务器上的会话 ID 唯一标识;这是您的服务器和计算机之间的唯一链接。如果有人要获得此 ID,那么他们就可以访问您的会话。

大流士

于 2012-11-01T21:30:29.877 回答