我的系统是 ubuntu 10.04,安装了 CouchDB 1.0。我可以创建管理员或更多管理员,以管理员身份登录,一切正常。
从 CouchDB 0.11 开始,存在非管理员用户的概念,并且可以对数据库拥有细粒度的权限。我想创建这样的用户。我打开 Futon,尚未登录,然后单击“注册”链接(右下角)。然后是关于用户名和密码的问题。当我填写表格并提交时,“用户名”字段下有很长的错误消息:
注册错误: {gen_server,call, [couch_query_servers, {get_proc,{doc,>, {1, [>]} , {[{>,>}, {>, 0) {\n throw({forbidden: '仅管理员可以设置角色'});\n }\n }\n\n // 用户 db\n 中没有系统角色 for (var i = 0; i ') {\n throw({\n 禁止:\n '用户数据库中没有系统角色(以下划线开头)。'\n });\n }\n }\n\n // 没有系统名称作为名称\n if (newDoc.name[0] === '_') {\n throw({forbidden: '用户名不能以下划线开头。'});\n }\n }\n">>}] }, [],false,[]}, {>, >}}]}
它是什么?如何在 CouchDB 中创建用户?
要创建用户,请将 JSON 文档放入http://localhost:5984/_users/org.couchdb.user:<username>
例如创建一个文件login.json
像这样:
{
"_id": "org.couchdb.user:test",
"name": "test",
"password_sha": "24e8e07c23d8ae85108468ec4814b2f0fa84edde",
"salt": "78f67e252351a56d6e1e6df9ba005239",
"roles": [],
"type": "user"
}
然后将数据放入 couchdb 中:
curl -X PUT http://<admin>:<password>@localhost:5984/_users/org.couchdb.user%3Atest -S -s -H "Content-Type: application/json" -d @login.json
(代替<admin>
and <password>
使用您的 couchdb 凭据。)
现在您应该能够使用用户“test”和密码“test123”登录 couchdb。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)