Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.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 如何在coach DB中实现单向同步_Couchdb_Pouchdb - Fatal编程技术网

Couchdb 如何在coach DB中实现单向同步

Couchdb 如何在coach DB中实现单向同步,couchdb,pouchdb,Couchdb,Pouchdb,我使用couchdb作为数据的主数据库,在客户端我安装了pockdb实例。现在,我想将数据从主服务器同步到客户端,但任何客户端都无权将数据同步回服务器 我知道Pocky/Coach db中存在单方面的db复制,但这并不能限制未知客户故意滥用Coach db。(任何用户都可以访问我的Coach DB实例的API并对其造成伤害) 注意:客户端没有身份验证系统。一种粗略的方法是将CouchDB置于反向代理(例如,nginx)之后,并将反向代理配置为阻止所有POST,put,补丁和删除数据库请求。考虑集

我使用couchdb作为数据的主数据库,在客户端我安装了pockdb实例。现在,我想将数据从主服务器同步到客户端,但任何客户端都无权将数据同步回服务器

我知道Pocky/Coach db中存在单方面的db复制,但这并不能限制未知客户故意滥用Coach db。(任何用户都可以访问我的Coach DB实例的API并对其造成伤害)


注意:客户端没有身份验证系统。

一种粗略的方法是将CouchDB置于反向代理(例如,nginx)之后,并将反向代理配置为阻止所有
POST
put
补丁
删除
数据库请求。

考虑集中式CouchDB上的验证功能,如下所述:

validatefun(newDoc、oldDoc、userCtx、secObj)

抛出:
禁止
错误以正常阻止文档存储。

设计文档可能包含一个名为
validate\u doc\u update
可用于防止无效或未经授权的文档更新 正在存储来自的请求


那可能行得通。但是有没有更干净的解决方案呢?你可以使用一个更新处理程序。这可以防止通过您的应用程序进行更改,但如果有人真的想更改服务器上的数据库,则不会阻止他们进行更改。没有“本机”方法可以做到这一点(假设没有身份验证)。