确保PHP会话安全

时间:2012-10-03 17:49:44

标签: php session security session-variables

当用户创建帐户时,他会从数据库中获得唯一且自动递增的用户ID。因此,第一个用户的用户ID为1,创建的第二个用户的用户ID为2,依此类推。我正在使用PHP会话在登录时存储用户ID,以便他们保持登录状态。在阅读了几篇文章之后,我明白你永远不会希望PHP会话像我一样容易受到攻击(这很容易)让黑客确定每个用户的php会话用户ID是什么。所以我的问题是,如果我是根据他们的唯一用户名使用md5或blowfish为每个用户生成一个用户ID,那会使PHP会话安全吗?

1 个答案:

答案 0 :(得分:1)

一个好的方法总是在登录屏幕上并立即登录后强制使用随机数生成新的会话ID

session_start();
$newsessid = somerandomnumberfunction();
session_id($newsessid);

您还可以使用session_regenerate_id()函数生成新的ID

session_start();
session_regenerate_id();

好读

PHP Session Security

PHP Security Guide: Sessions