2010-09-21 54 views
3

我不知道下面的代码的安全程度:设置登录SESSION数据 - 安全性?

if ($username == $user->username && $password == $user->password) { 
    $_SESSION['loggedIn'] = true; 
    $_SESSION['userId'] = $user->userId; 
} 

基本上,会有什么办法有人假冒会话变量(除了实际盗窃用户的cookie)?

回答

1

对我来说似乎很好。只是不要将密码或敏感数据存储在会话中,以防有人窃取会话ID。我相信大部分安全风险都是在安全地获取服务器密码时发生的。

此外,你应该至少存储你的密码散列。使它(假设$ user->密码使用sha1哈希)sha1($password) == $user->password

+0

感谢您的输入。我的密码以腌制的md5格式存储。 – 2010-09-21 02:57:58

+1

“万一有人偷了会话ID”---那又如何?你偷了我的session_id。你将如何获得密码? – zerkms 2011-01-14 07:16:43