没有CouchDB复制"协议".复制过程只是一个连接到两个CouchDB端点的客户端,从一个端点读取文档,然后将它们写入另一个端点.当然,CouchDB内置了这样一个客户端("复制器"); 但从概念上讲,它是第三方应用程序.
这意味着,您可以从应用程序的安全分析中删除复制.首先考虑正常的Web客户端读取和写入您的服务器.锁定它.您可能会假设有一个被黑客入侵的Web浏览器或使用自定义HTTP客户端(例如,不尊重跨源策略)的假设对手.
解决了这个问题后,复制必然会遵循您的安全策略.
换句话说,在PouchDB和CouchDB之间复制:
validate_doc_update功能."members"数组.客户端可以完全读取数据库,也可以根本不读取数据库.当然,您可以在服务器端对特殊用途数据库进行过滤复制.