以下哪项方法使用户在浏览网站并创建新选项卡时保持登录状态?



我今天早上进行了一次编程面试,被问及以下哪一个答案在用户浏览网站甚至打开新标签页时保持登录状态:

  1. HTTP 饼干
  2. HTTP keep-alive
  3. 网络套接字
  4. HTML 本地存储

我不认为它们中的任何一个是合适的答案。

可以使用 Cookie,但并不安全。

保持活动状态是关于保持连接打开以允许更高的网络效率。也许如果登录需要持续的服务器连接,这可以工作,但它似乎通常不适合用例。

Websocket 用于来回通信,而不是维护登录。

本地存储可以再次使用,但与cookie一样,它没有任何数据安全性,并且似乎再次不合适。

我告诉面试官在客户端使用令牌,因为数据存储在服务器端,但他希望我从选项列表中进行选择。我选择了本地存储,但我不确定这是否是正确的选择。我错过了什么?我误解了某个概念吗?

不幸的是答案"1。HTTP cookie"是正确的。并且 Cookie 可以以安全的方式实施。有关详细信息,请参阅 OWASP ASVS 第 V3.4 章 基于 Cookie 的会话管理。

顾名思义,本地存储用于在客户端本地存储数据。默认情况下,此存储不与服务器共享,并且绝不应用于保存任何机密数据。

你对其他观点的看法或多或少是正确的。

最新更新