基于Cookie的登录系统

时间:2012-04-06 08:23:54

标签: php security

我正在考虑使用cookie-ip匹配系统自动登录用户,如果他们在已知系统上并且他们的IP没有改变,他们就不必输入他们的登录数据。

这项政策是否正常还是我开了一个重要的安全漏洞?

3 个答案:

答案 0 :(得分:2)

在某些人使用公共机器的情况下,这可能是一个潜在的安全问题。所以让它成为可选的。您还需要考虑一些机器使用动态IP寻址。你提出的方法在这种情况下不起作用。

但最重要的是不要将密码存储在cookie中。

答案 1 :(得分:1)

只需创建“注销”链接,在您删除其Cookie之前,选择他们的电子邮件并使用哈希邮件将其链接,从而重新生成其Cookie。所以他们可以在公共机器上注销。

在通过数据库处理之前清理cookie。

答案 2 :(得分:1)

当然,这是一个安全漏洞,因为如果用户登录您的网站并忘记退出,任何使用此计算机的人(在计算机上使用相同的帐户)都可以登录您的网站。

请注意,所有网站也会出现此问题,但通常仅限于会话生命周期。

由于这就是所有网站的运作方式,我不认为这是一个真正的安全漏洞,但它肯定会鼓励用户不小心安全性。这是一个椅子/键盘接口安全漏洞:P

正如@Ed Heal所说,不要在密码中存储密码,而是存储一个随机的令牌而不是你将保存在数据库中。登录过程应检查存储在DB中的cookie是否等于cookie上的cookie。