如何在管理员方式下保护CouchDB

时间:2010-09-13 13:16:21

标签: security couchdb

我正在使用BigCouch,这是一个可扩展的CouchDB集群的非常好的实现。但它有一个小问题 - 它不能很好地支持CouchDB 1.0风格的安全功能。所以它必须保持在管理员方式。

在管理员方式下保护CouchDB实例的选项有哪些。每个用户都应该拥有自己的数据库,并允许他们使用CRUD非设计文档,查询视图但不允许使用CRUD设计文档,执行压缩和其他操作,就像CouchDB Security中的读者一样

是否可以在CouchDB之外启用此类安全性。使用Web代理或消息传递系统,或许?

Thanx很多

1 个答案:

答案 0 :(得分:1)

是的,我认为最好的办法是将代理放在BigCouch前面,并在代理中强制执行安全规则。

您可以通过使用Apache或nginx作为前端代理并根据用户名编写重写规则来转发或拒绝请求,我可以做到这一点,我不确定。

但是,我认为用代码实现代理会更有效,更直接,更容易实现和管理。

我的团队已成功在Node.js上使用自定义逻辑实现HTTP代理。有一个名为node-http-proxy的实体库,this post有一些很好的示例代码,展示了如何从头开始实现一个简单的代理并添加自定义逻辑。

HTH!