gpt4 book ai didi

javascript - 本地 IndexedDB 安全性(数据库名称唯一性)

转载 作者:行者123 更新时间:2023-11-28 00:53:12 24 4
gpt4 key购买 nike

PouchDB 在底层使用 IndexedDB。创建数据库时指定数据库名称;如果不是 URL,the docs提到它将使用任何存在的后端(即 IndexedDB、WebSQL 或 LevelDB)创建本地数据库。

我找不到任何有关名称唯一性的信息。如果有两个 Web 应用程序创建同名的 IndexedDB,会发生什么情况?

是不是:

  • 数据库链接到域,因此您只需要在单个域的多个网络应用程序(例如游戏)中使用唯一的数据库名称,或者
  • 数据库名称是全局的,所有数据库都必须具有唯一的名称(类似于 Google Play 要求唯一的应用命名空间的方式)

我计划在单个域上托管的多个游戏中使用它,但我也想知道 Is 是否应该在数据库名称中添加某些域标识符前缀,这样我就不会意外地与其他站点的其他 IndexedDB 实例发生冲突。

最佳答案

WebSQL 和 IndexedDB 数据库均链接到主机。因此,foo.combar.com 将拥有不同的数据库,即使它们的名称相同。这是标准的网络安全; Cookie 和 LocalStorage 也会发生同样的情况。

来自Cross Directory Attacks部分:

Different authors sharing one host name, for example users hosting content on geocities.com, all share one set of databases.

显然数据库是按域共享的,而不是按主机共享的。

关于javascript - 本地 IndexedDB 安全性(数据库名称唯一性),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26529686/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com