【问题标题】:for remembering passwords, sessions or cookies or both?用于记住密码、会话或 cookie 或两者兼而有之?
【发布时间】:2011-09-26 04:11:28
【问题描述】:

如果用户决定在登录时根据复选框记住他们的密码,那么设置会话和 cookie 是否是一种好习惯?还是只做饼干会更好?

我想我理解在用户登录并且不喜欢记住密码时进行会话。

哪个是记住登录的好习惯?

感谢您的宝贵时间!

【问题讨论】:

  • 我不知道,我更喜欢使用 SESSION 来保持 SESSION 活动(而不是用于存储密码;从不将密码以明文形式存储在客户端上的任何地方,包括数据库,我强烈建议不要在客户端上存储密码的哈希值)。但是,记住用户名,我对此感到矛盾;只要它仅用于在登录时填写用户名字段,而不是用于重建登录状态。
  • 您可以使用 LocalStorage 来记住用户名。安全且(非常)容易。使用它来记住密码也可能有风险,但可行(浏览器应限制来自其他网站和脚本的 LocalStorage 访问)。
  • @Artefact2 - LocalStorage 的限制是否与 COOKIE 的跨域限制不同?是什么让 LocalStorage(如果可用)比 COOKIE 更安全?
  • 好吧,为域上的每个请求发送 cookie。 LocalStorage 就像它在锡上所说的那样。您只需从中获取以预先填写登录表单。
  • 我只在用户登录时进行会话,他们可以在不经常登录的情况下浏览页面。我没有在会话或 cookie 中存储任何密码。我只是将 id 存储到 cookie 中

标签: php session cookies session-cookies


【解决方案1】:

由于会话默认在 20 分钟后被终止,您认为长时间存储的最佳解决方案是什么?

我希望您并没有考虑将密码实际存储在 cookie 或会话中,而是存储一些随机 ID,您还存储在数据库中,您在每次页面查看时都会检查这些 ID?

【讨论】:

  • 是的,我只存储 id... 我想这就是我存储的全部内容。 setcookie('remember',$id,$time) $id 是唯一存储的变量吗?
  • 正确。我也希望它确实是一个随机 ID 而不是用户 ID,因为它可以很容易地更改?如果我将我的 cookie 更改为 ID 1,我会有管理员权限吗? ;)
  • 嗯,有道理。我会试试这个!谢谢!
猜你喜欢
  • 1970-01-01
  • 2013-03-13
  • 2011-06-17
  • 2015-10-14
  • 2017-12-28
  • 1970-01-01
  • 1970-01-01
  • 2018-12-01
  • 2020-02-04
相关资源
最近更新 更多