Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Couchdb应用过滤器服务器端_Couchdb_Replication_Pouchdb - Fatal编程技术网

Couchdb应用过滤器服务器端

Couchdb应用过滤器服务器端,couchdb,replication,pouchdb,Couchdb,Replication,Pouchdb,我正在开发一个移动应用程序,它使用backdb(客户端)和CouchDB(服务器端) 我需要保护文档,以便允许用户仅读/写自己的文档 我为此做了一个过滤器,比如: function(doc, req) { return doc.owner == req.userCtx.name || doc.sharedWith == req.userCtx.name; } 而且它工作得很好,但前提是来自客户端的请求包含过滤器: /somedatabase/_alldocs?filter=filter

我正在开发一个移动应用程序,它使用
backdb
(客户端)和
CouchDB
(服务器端)

我需要保护文档,以便允许用户仅读/写自己的文档

我为此做了一个过滤器,比如:

function(doc, req) {
    return doc.owner == req.userCtx.name || doc.sharedWith == req.userCtx.name;
}
而且它工作得很好,但前提是来自客户端的请求包含过滤器:

/somedatabase/_alldocs?filter=filter/secure
出于明显的安全原因,我需要CouchDB在每个请求中使用过滤器,无论是否有客户机明确说明。这可能吗?否则,处理这些安全问题的正确方法是什么


有一个类似的问题,但答案不适用于我的情况,因为我需要在用户之间共享文档并在所有数据库之间复制它们不是一个有效的选项。

所以我不知道您是否看过这个问题,但它列出了一些可用的选项。有些已经过时了

每用户数据库 可能是最流行的解决方案。正如您所说,您需要与其他用户共享文档。这可以通过以下方式实现:

  • 共享时将文档复制给其他用户。您可以有一个deamon来监听_changes提要并更新其他用户数据库中的作者文件
  • 构建web服务以访问共享文档(非常类似于代理解决方案)
  • 智能代理 在数据库前面构建一个智能代理,并执行一些业务逻辑来获取文档。这使您能够更好地控制数据流,但速度肯定会变慢


    validate_doc_read server函数可能会引起您的兴趣,但它从来都不是CouchDB发行版的一部分(由于列出的限制)。

    因此我不知道您是否看过它,但它列出了一些可用的选项。有些已经过时了

    每用户数据库 可能是最流行的解决方案。正如您所说,您需要与其他用户共享文档。这可以通过以下方式实现:

  • 共享时将文档复制给其他用户。您可以有一个deamon来监听_changes提要并更新其他用户数据库中的作者文件
  • 构建web服务以访问共享文档(非常类似于代理解决方案)
  • 智能代理 在数据库前面构建一个智能代理,并执行一些业务逻辑来获取文档。这使您能够更好地控制数据流,但速度肯定会变慢


    validate_doc_read server功能可能会引起您的兴趣,但它从未成为CouchDB发行版的一部分(由于列出的限制)。

    嗯,可能不是。我们正在开发的应用程序需要与不同的用户共享文档。任何文档都可以与不同的用户组共享

    嗯,可能不是。我们正在开发的应用程序需要与不同的用户共享文档。任何文档都可以与不同的用户组共享