0

我目前将我的密码保存在数据库中并使用会话 cookie 进行检查,但它使用户的身份验证如此缓慢,而且由于我有很多用户,我为我的网站购买了一个 ssl 证书,我需要知道保存散列密码是否安全(sha512)成饼干还是没有?这是我保存会话的代码

session_set_cookie_params($cookieParams["lifetime"], $cookieParams["path"], $cookieParams["domain"], $secure, $httponly);

将其安全参数设置为 false 是否足以将其设置为 true 或者当用户在地址栏中插入http://site.com时我需要将用户重定向到 https?

4

2 回答 2

0

如果您需要检查用户是否已登录,请不要保存密码。将用户输入密码的重新哈希值与数据库中的哈希值进行比较,然后启动会话并将登录标志设置为 true。然后,对于需要用户登录的部分,使用if语句检查该用户的$_SESSION['loggedin'] === true. 这样,您就不会在用户本地计算机上存储敏感信息,并且用户无法直接访问$_SESSION超全局来弄乱他们的状态。

于 2013-05-16T14:53:57.360 回答
0

不,您不应该在用户的 cookie 中存储密码,而应该存储会话标识符。OWASP 的会话管理备忘单值得一读。安全管理会话有很多微妙之处,一个 SO 问题无法涵盖所有​​这些细节。

于 2013-05-17T09:47:21.537 回答