我目前正在尝试使用 couchdb“ session ”机制。我(ofc)读到:http://wiki.apache.org/couchdb/Security_Features_Overview和 http://wiki.apache.org/couchdb/Session_API .
但我无法登录。所以我徘徊了一下,发现了类似 http://guide.couchdb.org/draft/security.html 的文章和 http://pierrel.posterous.com/securing-couchdb以及一些 SO 线程。
所以,这就是我所做的: 我创建了用户数据库并添加了一个用户 (totolol:foobar):
{
"_id": "org.couchdb.user:totolol",
"_rev": "1-88709660d602783be794f99825849f96",
"type": "user",
"name": "totolol",
"roles": [
"foo"
],
"password_sha": "c7912a8680385df682ba95db5b994e5e6ca0201d",
"salt": "1b5889d58de6ba15c51ccf5914f6b58a"
}
但是,无论我如何尝试登录:
curl -vX POST http://org.couchdb.user:totolol:foobar@bachman:8889/_session
curl -vX POST http://bachman:8889/_session -d 'name=totolol&password=foobar'
...
我总是得到相同的结果,带有以下消息的 401 响应:
{"error":"unauthorized","reason":"Name or password is incorrect."}
我不知道我做错了什么,也许我的配置被破坏了,但我被卡住了。所以我希望你们中的一位能告诉我该怎么做。 :)
最佳答案
对于 curl
,使用您提供的第二个示例:
curl -X POST http://username:password@server:5984/_session -d 'name=totolol&password=foobar'
这绝对是正确的程序。我已经在 CouchDB v1.1.0 上确认了。
关于security - 使用 _session 进行身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7385662/