设计文档的 PouchDB 复制

PouchDB replication of design documents

我在应用程序内浏览器中有一个 Cordova 应用程序 运行 PouchDB。每个用户属于一个'team'。对于每个团队,云中都有一个沙发数据库,​​他们都将其本地邮袋与之同步。

我想创建一个提供一些简单过滤功能的设计文档,但我担心属于该团队的任何用户都能够创建设计文档的新修订版,从而影响其他所有用户用户对文件的看法。

锁定设计文档的更新是一种常见的做法吗?这些设计文档通常是在用户之间复制,还是仅在本地 pouches 中创建并以某种方式阻止复制到共享云沙发?

我对人们的标准建议是永远不要复制设计文档。这太混乱了,而且存在安全风险。

因此当你复制的时候,你可以做一个过滤器来排除任何ID以_design/开头的文档。在客户端,您只需创建所需的任何 ddoc,并与服务器同上。

另一方面,这并不能阻止恶意用户试图覆盖服务器端的设计文档。 (如果您还使用服务器端 ddoc。)防止这种情况的唯一方法是使用 validate_doc_update 函数,您可以使用它来防止非管理员覆盖设计文档。

希望对您有所帮助!