I recently install CouchDB on my CentOS box ('yum install couchdb'). I set up an admin account and then set out to create my first non-admin user. I issue the command..
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"}'
The response looks good..
{"ok":true,"id":"org.couchdb.user:brad","rev":"3-078014aabce23da851ef243f92a7fc5c"}
Now, to verify the user data has been created properly I get the new user data..
curl -X GET http://admin:abc123@localhost:5984/_users/org.couchdb.user:brad/
.. and I get the following response which seems to be missing some things..
{"_id":"org.couchdb.user:brad","_rev":"3-078014aabce23da851ef243f92a7fc5c","name":"brad","password":"asdf","roles":[],"type":"user"}
... from everything I've read there should be some additional fields.. "password_scheme", "iterations", "derived_key", and "salt". Further, I've created a database in Futon and set "brad" as a reader for that database, but when I attempt to access the DB as brad from the CLI I get an error..
curl -X GET http://brad:asdf@localhost:5984/test_db
{"error":"unauthorized","reason":"Name or password is incorrect."}
Anyone have any idea why CouchDB isn't processing the new user properly?