允许非管理员用户创建CouchDB数据库

时间:2017-08-26 03:13:33

标签: authentication couchdb pouchdb

我正在使用CouchDB 2.1.0,对于我的用例,我希望非管理员用户能够创建自己的数据库,然后他们将具有写/读访问权限,并能够添加其他用户具有读/写访问权限的用户。

请注意,这不是每个用户一个数据库,这似乎是常见的用例,但是每个用户都有许多用户创建的数据库。

目前正由POST _users数据库创建用户。身份验证由CouchDB的内置身份验证处理。

可以创建一个后端服务,该服务具有可以创建这些数据库的管理员凭据,但我希望避免这样做。通过文档阅读,默认情况下,CouchDB似乎只允许管理员创建数据库;有没有办法改变这个?

1 个答案:

答案 0 :(得分:1)

老实说,我认为这里唯一真正的答案是你必须制作一个具有可以创建新数据库的管理员凭据的后端服务。由于我对这个项目的目标之一是“除了CouchDB之外没有后端”,所以有点可怕。

我的后端服务最终只是获取了应该有权访问创建的数据库的用户列表,创建具有唯一ID的数据库,并返回该ID。然后,我在每个用户的数据库中都有一个文档,列出了他们创建的所有数据库。