【问题标题】:"Remember me" - What to keep in cookie? -PHP [duplicate]“记住我” - 在 cookie 中保留什么? -PHP [重复]
【发布时间】:2015-12-02 05:30:08
【问题描述】:

嗯,

过去,当客户端连接到站点时,我将其保留为$_SESSION

现在,我想用 cookie 实现“记住我”的可能性。

出于安全原因,我应该把cookie的值放在什么地方?

谢谢。

【问题讨论】:

  • 这个问题已经回答了here

标签: php cookies


【解决方案1】:

短期用户身份验证通常使用会话,而长期身份验证依赖于存储在用户浏览器中的长期 cookie。用户通常将此功能作为一个标记为“在这台计算机上记住我”的复选框来体验。在不构建可轻易利用的后门的情况下实现“记住我”功能需要一个小的工程壮举。

简单的解决方案:只需将用户凭据存储在 Cookie 中

任何看起来像remember_user=1337 的长期身份验证解决方案都容易被滥用。由于管理员帐户的用户 ID 通常较低,remember_user=1 几乎肯定会让您登录到特权用户帐户。

持久认证令牌

另一个不太容易受到攻击的常见策略是在用户选中“记住我”框时生成唯一令牌,将唯一令牌存储在 cookie 中,并拥有一个将令牌与每个用户的令牌相关联的数据库表帐户。这里还有很多地方可能会出错,但毫无疑问,它比以前的策略有所改进。

Source

为了更深入的了解,强烈推荐这个Implementing Secure User Authentication in PHP Applications with Long-Term Persistence

【讨论】:

  • 感谢您的信息(:
猜你喜欢
  • 1970-01-01
  • 2011-03-08
  • 1970-01-01
  • 2020-03-28
  • 2012-09-02
  • 1970-01-01
  • 2014-07-24
  • 2021-04-05
  • 2016-09-27
相关资源
最近更新 更多