没有cookie的登录系统

PHP*_*PHP 0 php cookies session login session-cookies

我从Internet获得了一个PHP登录系统插件,它不使用手动创建的cookie,只使用会话.(与会话相关的cookie会自动创建)

使用这样的登录系统是否安全?

Eli*_*gem 8

是的会话登录系统是安全的,甚至比仅使用cookie的方法更安全.
标准会话在PHP中使用cookie,但它可以在没有cookie的情况下完成,如果你是一个受虐狂,这很有趣.如果你喜欢疼痛,请检查这个问题.

只需google "会话权益""会话与Cookie".并通过此页面阅读没有cookie的会话,特别是最后一点(缺点).
请注意,客户端的安全性是主要问题:如果您不小心,共享链接可能意味着共享会话.考虑让一个被劫持的浏览器登录的客户端,他/她的会话ID现在是公共财产.XSS攻击也是如此.
因此,您必须记录客户端的IP,这可能会不时发生变化.你将不得不一次又一次地检查并发连接......唉,恐怖......你需要检查太多了.

同时在SO上查看此帖子,了解有关会话和Cookie的更多详细信息:

(dis)会话与cookie的优势

  • 我不认为这回答了OP的问题.他没有问"我应该将敏感数据存储在Cookie中吗?" 但"我可以拥有一个没有cookie的会话管理系统吗?" 答案是"在理论上是的,但你可能不想要它" (2认同)

Ani*_*gel 6

有两种使用会话的方法.

  1. sessionID存储在用户计算机上的cookie中
  2. sessionID在每个页面加载时作为查询参数传递回服务器.

现在因为它只是存储在cookie中的会话ID,所以这并不会使它不安全.

但是,如果您使用方法2并将sessionID作为查询参数传递,则会不太安全,因为会话ID将存储在浏览器历史记录中,即使在以后重新打开浏览器时会删除会话cookie.关闭了浏览器.

困惑在于不了解会话如何工作.使用cookie的会话不会在客户端计算机上存储任何会话信息,只会存储会话的ID.无论您选择基于cookie还是cookieless的处理会话的方法,会话信息都存储在服务器上