【发布时间】:2013-12-27 18:42:57
【问题描述】:
我正在为基于 php 的 CMS 使用“记住我”功能,这就是我设置登录系统的方式。
当新用户输入用户名 + 密码并通过服务器验证,然后将 cookie 发送到客户端并加载新页面。
现在,当登录后的第一页被加载时,我正在验证 cookie。我在 cookie 中使用“user_id”+“token”,并在数据库中使用盐保存哈希。
我想知道的是,我是否需要在每次页面加载时通过进行数据库查询或使用php session 以下列方式验证 cookie 是否足够?
if (!session_id()) {
validate_cookie();
} elseif ($_COOKIE['session'] == session_id()) {
//get the previous verification result;
}
这是一个问题,我必须将 session_id() 和最后一个 validate_cookie() 结果保存在客户端。那么它是否实用,更重要的是它是否安全?或者我必须在每次页面加载时验证它?
如果您认为我应该采用更好的方法来做到这一点,请提及。
【问题讨论】:
-
还有一点,客户端存储和使用会话数据可靠吗?
标签: php validation session cookies