我最近在我的CentOS盒子上安装了CouchDB(' yum install couchdb')。我设置了一个管理员帐户,然后开始创建我的第一个非管理员用户。我发出命令..
curl -X PUT http://admin:abc123@localhost:5984/_users/org.couchdb.user:brad \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "brad", "password": "asdf", "roles": [], "type": "user"}'
回应看起来不错......
{"ok":true,"id":"org.couchdb.user:brad","rev":"3-078014aabce23da851ef243f92a7fc5c"}
现在,为了验证用户数据是否已正确创建,我获得了新的用户数据..
curl -X GET http://admin:abc123@localhost:5984/_users/org.couchdb.user:brad/
..我得到以下回复,似乎缺少一些东西..
{"_id":"org.couchdb.user:brad","_rev":"3-078014aabce23da851ef243f92a7fc5c","name":"brad","password":"asdf","roles":[],"type":"user"}
...从我读过的所有内容中都应该有一些额外的字段.." password_scheme"," iterations"," derived_key",和"盐&#34 ;.此外,我在Futon中创建了一个数据库并设置了" brad"作为该数据库的读者,但当我尝试从CLI访问DB作为brad时,我收到错误..
curl -X GET http://brad:asdf@localhost:5984/test_db
{"error":"unauthorized","reason":"Name or password is incorrect."}
任何人都知道为什么CouchDB没有正确处理新用户?
答案 0 :(得分:4)
看起来你的CouchDB已经过时了;新的身份验证内容是1.3.0+。使用build-couchdb可能会有更好的运气:https://github.com/jhs/build-couchdb