我正在尝试在我的网站上“记住我”并将下面的代码添加到我的登录脚本中.
密码通过sha1()函数运行,用户名被修剪并通过mysql_real_escape_string()运行,然后再将其分配给SESSION.
如何使这更加安全,防止劫持.
谢谢.
if($_POST['remember']) {
setcookie("CookieUser", $_SESSION['usrename'], time() + 60 * 60 * 24 100, "/");
setcookie("CookiePass", $_SESSION['password'], time() + 60 * 60 * 24 100);
}
解决方法:
为了记住我,我们使用令牌设置.当用户使用用户名和密码登录系统时,会在数据库中生成具有相应用户名,IP和其他因素的令牌.我使用相同的令牌和用户名作为cookie保存,当用户返回令牌和cookie的用户名时,我们再次使用指定的ip,用户名和其他因素验证令牌,并设置用户登录状态(如果匹配全部).
这样我跳过在cookie中存储密码,并且有点安全.