Couchdb 无法使用“用户”将文档添加到数据库中;您不是服务器管理员”;
我与我创建的用户之间存在问题,他们无法将任何内容提交到我在下面列出的数据库中。我遵循了这里列出的步骤()并查阅了无数页的文档,试图将其整理出来。(例:) 我正在使用v1.5,并试图将用户“testAdmin”设置为“test”DB的管理员。超级管理员,这是我通过futon界面创建的管理员帐户 如果我检查安全文档,我可以在那里看到我的权限,该权限应允许testAdmin用户访问数据库:Couchdb 无法使用“用户”将文档添加到数据库中;您不是服务器管理员”;,couchdb,Couchdb,我与我创建的用户之间存在问题,他们无法将任何内容提交到我在下面列出的数据库中。我遵循了这里列出的步骤()并查阅了无数页的文档,试图将其整理出来。(例:) 我正在使用v1.5,并试图将用户“testAdmin”设置为“test”DB的管理员。超级管理员,这是我通过futon界面创建的管理员帐户 如果我检查安全文档,我可以在那里看到我的权限,该权限应允许testAdmin用户访问数据库: curl -X GET http://superadmin:1234@localhost:5984/test/_
curl -X GET http://superadmin:1234@localhost:5984/test/_security
答复:
{
"admins":
{ "names":["testAdmin"],
"roles":[]
},
"readers":
{ "names":["testUser"],
"roles":[]
}
}
{"error":"unauthorized","reason":"You are not a server admin."}
如果我运行这个,我会得到“你不是服务器管理员。”
答复:
{
"admins":
{ "names":["testAdmin"],
"roles":[]
},
"readers":
{ "names":["testUser"],
"roles":[]
}
}
{"error":"unauthorized","reason":"You are not a server admin."}
我尝试过将用户切换到读卡器,我也尝试过使用我创建的另一个用户,该用户当前被列为读卡器,我不断遇到相同的错误
编辑:我可以与我创建的用户一起登录Futon,他们的权限在Futon中似乎都可以正常工作,但我仍然无法成功使用curl。您正在尝试代替。如果要创建没有预定义ID的文档,请使用request。@Kxepal已经解决了此问题。所以,我要明确这就是正在发生的事情 你有一个
超级管理员
,用couchdb的术语来说,他是一个服务器管理员,可以做任何事情。他/她可以创建数据库、删除数据库、获取任何文档等
然后,您还有其他用户,他们拥有您分配给他们的权限。因此,当您创建\u security
文档时,您所做的是告诉couchdbdbadmin
是数据库的管理员,dbreader是数据库的成员。这是futon对管理员和成员的定义
数据库管理员可以更新设计文档并编辑管理员和成员列表
数据库成员可以访问数据库。如果未定义成员,则数据库为公共数据库
一旦您定义了管理员或成员,您的数据库就不再是公共数据库。只有具有足够权限的用户才能访问它们
根据@Kxepal指出的请求,您试图创建一个数据库。数据库管理员无法创建数据库。该权限属于服务器管理员,在您的情况下属于超级管理员。使用
卷曲
这可能就是最初问题的解决办法。值得补充的是,如果你让Fauxton打开它却没有意识到,Fauxton经常会“忘记”它的身份验证,以奇怪的方式失败,直到你重新加载页面,它意识到你需要再次登录
简而言之,我遇到了一个类似的问题,需要重新验证以解决它。请确定:您是否知道开始使用CouchDB时不需要任何用户创建?您可以指定您打算做什么吗?谁能做什么?1.5版的官方文档是。对于您的问题(,)有几个部分可能很有趣。我认为会话超时可以通过