gpt4 book ai didi

security - PouchDB/CouchDB 的每个文档用户访问控制

转载 作者:行者123 更新时间:2023-12-04 12:40:31 25 4
gpt4 key购买 nike

我希望使用 PouchDB - CouchDB 为我的 Web 应用程序保存用户数据,但找不到控制每个用户访问的方法。我的数据库将仅包含使用用户 ID 作为键的文档。我知道有一些解决方案:

  • 每个用户一个数据库 - 但是它需要在新用户想要保存数据以创建新数据库时进行监控,并且可能会创建很多数据库;
  • 客户端和 CouchDB 之间的代理 - 但是我不希望 PouchDB 同步整个数据库的更改,包括那些 _all_docs、_revs_diff 请求中其他用户的文档。

  • 对于大约 100 万用户群(仅活跃用户大约 1 万)的 pouchDB 用户访问控制有什么建议吗?

    最佳答案

    话题a million or more databases过去曾出现在邮件列表中。结论是,这取决于您的操作系统如何处理这么多文件。 CouchDB 只是访问 .couch 的一部分。请求时归档。性能与查找、打开、访问和关闭该文件的速度有关。

    一些文件系统有一些技巧,比如把 /数据库名称中的分隔符——这将导致 CouchDB 将它们存储在匹配的目录结构中,例如 groupA/userA.couch或使用电子邮件样式的数据库名称 com/bigbluehat/byoung.couch (或类似的)。

    如果这还不够,Apache CouchDB 2.0 引入了 BigCouch代码(IBM Cloudant 使用)来提供完全自动分片的 CouchDB。它尚未完成,但它将使用 Amazon Dynamo 样式的分片系统提供跨多个节点的可扩展性。

    另一种选择是在多个 CouchDB 服务器之间进行您自己的基于用户名的分区,或者使用 IBM Cloudant(专为这种级别的规模而构建)。

    所有这些选项都提供相同的 Apache CouchDB 复制协议(protocol),并且可以很好地与用户计算机、手机或平板电脑上的 PouchDB 配合使用。

    用户的设备将拥有自己的数据库+/- any share databases .那些百万用户设备上的应用程序只需要关注它们自己的内容(也就是硬盘空间)的可扩展性。该应用程序将直接复制到“云”端用户数据库以进行备份、Web 使用等。

    希望里面的东西听起来很有希望。 :)

    关于security - PouchDB/CouchDB 的每个文档用户访问控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30295304/

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