HTTP Cookie 的替代方案?

2024-04-11

他们说 Cookie 是bad http://cafe.elharo.com/web/why-cookies-are-bad-for-you-3/。我个人认为应该有一种“更智能”的方法来检测网络应用程序上用户的状态。

比如说,目前这就是它在分布式环境中的工作方式,其中 xyz.com 有许多池​​和服务器(我知道):

  1. 用户登录 xyz.com
  2. xyz.com 的登录模块在客户端的本地计算机上放置一个 cookie。
  3. 现在,当客户端访问 xyz.com 的 Feature1 时,feature1 池会检查本地 cookie,如果找到它并且该 cookie 尚未过期,则 Feature1 会认为客户端正常并让他进入。

因此,由于登录模块丢弃的 cookie,feature1 盲目信任客户端。

但我在第三阶段感觉到了一个根本性的缺陷。如果黑客克隆了 cookie 并试图做某事怎么办? (这是黑客尝试做的第一件明显的事情,cookie 嗅探)

那么,还有什么替代方案吗? - 网络存储、闪存存储对象未来将如何发展?还是 cookie 将占主导地位?

不寻找明显的答案,因为没有。我对解决这个问题的不同观点感兴趣。

Thanks


有很多(2021 年更新):

我相信其中的信息此资源来自谷歌 https://developer.chrome.com/docs/devtools/#storage and/or 这个链接 http://www.cio.com/article/2382838/enterprise-browsers/4-client-side-web-storage-options-that-replace-cookies.html将帮助您找到在客户端保存信息的替代方案。

基本上...目前有 4 种不同的方法可以在不使用 cookie 的情况下在客户端存储数据:

  1. 本地存储 https://caniuse.com/namevalue-storage (Session https://developer.chrome.com/docs/devtools/storage/sessionstorage/ and Local https://developer.chrome.com/docs/devtools/storage/localstorage/键/值对,不安全)
  2. Web SQL https://softwareengineering.stackexchange.com/questions/220254/why-is-web-sql-database-deprecated/232398#232398(我最喜欢的是,它是一个完整的 SQL 数据库,并且它并没有过时 https://developer.chrome.com/docs/devtools/storage/sessionstorage/)
  3. 索引数据库 https://caniuse.com/indexeddb(另一个具有不同结构和接受程度的数据库)
  4. 服务人员 https://caniuse.com/serviceworkers(持久后台处理,即使在离线状态下,也可以异步保存文件和许多其他内容)

我相信,对于您的特定需求,本地存储对是最简单的解决方案。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HTTP Cookie 的替代方案? 的相关文章

随机推荐

  • 错误 TypeError:无法读取 Angular 7 拖放中未定义的属性“长度”

    我只是想在 Angular 7 的帮助下创建拖放组件DragDropModule from angular cdk drag drop 但我总是收到如下错误 HomeComponent html 14 ERROR TypeError Can
  • 如何创建带有括号和参数的自定义 jquery 函数

    我知道我的问题需要更多澄清 所以让我解释一下 当我访问 fn extend 的 jquery api 文档时 我个人对创建如下所示的自定义 jquery 函数是多么容易感到震惊 input type checkbox check 链接在这里
  • 如何使用react.js上传Excel工作表文件并将数据显示到表格

    我是 React JS 的新手 我正在尝试使用react js上传Excel工作表文件并将数据显示到表格中 我有 链接中的部分参考 但并不完整 请帮忙解决一下 从 Excel 导入数据并在 React 组件中显示 https stackov
  • MVC 3 应用程序中的自定义 Http 处理程序

    我正在使用 Http 处理程序来本地化应用程序中使用的 javascript 文件 看 在 ASP NET 中本地化 JavaScript 文件中的文本 http madskristensen net post Localize text
  • Gulp - 处理多个主题和文件夹

    我正在努力创造一个终极gulpfile我们可以在我们的大型网站之一上使用它 一个具有多个主题 具体取决于您所在网站的部分 我试图让它只运行它需要运行的进程 而不是重新编译所有内容 让我准确地布局我想要实现的目标 文件夹结构 src mast
  • C# 反射:获取解决方案中的“所有”活动程序集?

    这是我的问题 我有 2 个项目 一个 常见 项目 其行为类似于具有各种支持代码的库 以及在许多调用中使用所述项目的实际程序 我们将这些项目称为 Common 和 Program 它们都在同一个解决方案中 在 Common 中 我有一个用于常
  • 使用我自己的 Laravel API 时如何遵循“不重复”原则?

    我正在开发一个 Laravel 4 应用程序 它将通过 JSON REST API 和 Web UI 对我的数据集提供相同的 CRUD 操作 看来 为了防止违反 DRY 原则 我的 UI 应该通过将所有请求从 UI 路由回 API 来使用我
  • 将 Rails/Unicorn/Nginx 容器连接到 MySQL 容器

    相关this https stackoverflow com questions 31735529 docker image from existing rails unicorn mysql app线程 我正在尝试创建 2 个容器 1 个
  • Service Fabric:找不到 EntryPoint Blah.exe

    我进行了一些项目重命名并更改了文件夹结构 现在我无法将服务结构应用程序部署到本地服务结构集群 Register ServiceFabricApplicationType 找不到 EntryPoint IdentityService exe
  • Selenium 代码不会终止

    以下代码不会终止 原因可能是什么 from selenium import webdriver from selenium webdriver common keys import Keys driver webdriver Firefox
  • Mod_Rewrite 规则冲突让我发疯

    我有一个 htaccess 如下 有些规则是冲突的 我需要以某种方式制定一个条件 这样他们就不会 RewriteEngine On RewriteRule search results template php L RewriteRule
  • 使用 Composer 安装 PEAR 扩展 HTTP_Request2

    我有一个composer json file name vendor Project description description text repositories type pear url http pear php net req
  • 在 gstreamer 中动态添加和删除 tee 队列

    我编写了gstreamer代码 用于同时进行摄像头直播和录制 我的管道看起来像这样 queue1 videosink v4l2src tee queue2 filesink 目前直播和文件录制正在协同工作 现在我需要启动只有一个队列的管道
  • 设置 NSWindow 焦点

    我有一个带有一个窗口和一个面板的应用程序 附加到该窗口 steps 停用我的应用程序 应用程序已打开 但没有焦点 单击面板上的按钮 面板现在处于焦点状态 但主窗口不是 如何从面板将焦点设置到主窗口 父窗口 Swift 5 版本的 BUDAx
  • 在自定义插件类中使用 Carbon Fields

    我有一个到目前为止还没有任何功能的插件 这是当前的结构
  • 木槌的基本用法。第一步

    我正在尝试使用Mallet实际上没有主题建模等方面的经验 我的目的是获得N的主题M我现在拥有的文档 用一个或多个主题对每个文档进行分类 文档 1 主题 1 文档 2 主题 2 可能还有主题 3 并用此结果对将来的新文档进行分类 我尝试使用b
  • 使用 Angular ui-router 有条件地导航到状态

    目前 我们有一个测试版的 投资组合 工具 用户登录主应用程序后 如果他们已获得测试版的访问权限 他们可以直接导航到投资组合工具 无需任何额外的登录 如果没有 他们应该被重定向到投资组合登录页面 状态称为portfolio login 他们可
  • 在我的服务器上运行其他人代码(沙箱)的安全方法?

    我想制作一个在本地运行其他人的代码的网络服务 当然 我想限制他们的代码对某个 沙箱 目录的访问 这样他们就无法连接到我服务器的其他部分 数据库 主网络服务器等 最好的方法是什么 运行VMware Virtualbox 我猜它已经尽可能安全了
  • 如何检查 Tensorflow LinearClassifier 的特征权重?

    我正在尝试理解使用 TensorFlow 的大规模线性模型 https www tensorflow org tutorials linear文档 这些文档对这些模型的推动如下 线性模型比神经模型更容易解释和调试 网 您可以检查分配给每个特
  • HTTP Cookie 的替代方案?

    他们说 Cookie 是bad http cafe elharo com web why cookies are bad for you 3 我个人认为应该有一种 更智能 的方法来检测网络应用程序上用户的状态 比如说 目前这就是它在分布式环