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在每个请求中使用过滤器,无论是否有客户机明确说明。这可能吗?否则,处理这些安全问题的正确方法是什么
有一个类似的问题,但答案不适用于我的情况,因为我需要在用户之间共享文档并在所有数据库之间复制它们不是一个有效的选项。所以我不知道您是否看过这个问题,但它列出了一些可用的选项。有些已经过时了 每用户数据库 可能是最流行的解决方案。正如您所说,您需要与其他用户共享文档。这可以通过以下方式实现:
validate_doc_read server函数可能会引起您的兴趣,但它从来都不是CouchDB发行版的一部分(由于列出的限制)。因此我不知道您是否看过它,但它列出了一些可用的选项。有些已经过时了 每用户数据库 可能是最流行的解决方案。正如您所说,您需要与其他用户共享文档。这可以通过以下方式实现:
validate_doc_read server功能可能会引起您的兴趣,但它从未成为CouchDB发行版的一部分(由于列出的限制)。嗯,可能不是。我们正在开发的应用程序需要与不同的用户共享文档。任何文档都可以与不同的用户组共享嗯,可能不是。我们正在开发的应用程序需要与不同的用户共享文档。任何文档都可以与不同的用户组共享