4

我正在尝试在我的网站上执行“记住我”并将以下代码添加到我的登录脚本中。

密码通过 sha1() 函数运行,用户名在分配给 SESSION 之前被修剪并通过 mysql_real_escape_string() 运行。

我怎样才能使它更安全,防止劫持。

谢谢。

if($_POST['remember']) {
    setcookie("CookieUser", $_SESSION['usrename'], time() + 60 * 60 * 24      100, "/");
    setcookie("CookiePass", $_SESSION['password'], time() + 60 * 60 * 24       100);
}
4

1 回答 1

1

记住我,我们使用令牌设置。当用户使用用户名和密码登录系统时,会在数据库中生成一个令牌,其中包含相应的用户名、ip 和其他因素。我使用相同的令牌和用户名保存为 cookie,当用户从 cookie 中返回令牌和用户名时,我们再次使用指定的 ip、用户名和其他因素验证令牌,并设置用户登录状态是否匹配所有。

这样我就跳过了将密码存储在 cookie 中并且有点安全的方法。

于 2012-05-15T06:19:25.307 回答