title: Python Pymongo auth failed
body: <p>Pymongo keep failing to login MongoDB. I typed right password for "root" account. </p>
  
  <pre><code>Traceback (most recent call last):
    File "index.py", line 3, in &lt;module&gt;
      from apis import app
    File "/home/app/apis/__init__.py", line 16, in &lt;module&gt;
      import apis.call
    File "/home/app/apis/call.py", line 12, in &lt;module&gt;
      import auth
    File "/home/app/apis/auth.py", line 18, in &lt;module&gt;
      connection.api.authenticate(database.ADMIN_ID,database.ADMIN_PASSWD)
    File "/usr/lib64/python2.6/site-packages/pymongo/database.py", line 875, in authenticate
      self.connection._cache_credentials(self.name, credentials)
    File "/usr/lib64/python2.6/site-packages/pymongo/mongo_client.py", line 456, in _cache_credentials
      auth.authenticate(credentials, sock_info, self.__simple_command)
    File "/usr/lib64/python2.6/site-packages/pymongo/auth.py", line 243, in authenticate
      auth_func(credentials[1:], sock_info, cmd_func)
    File "/usr/lib64/python2.6/site-packages/pymongo/auth.py", line 222, in _authenticate_mongo_cr
      cmd_func(sock_info, source, query)
    File "/usr/lib64/python2.6/site-packages/pymongo/mongo_client.py", line 687, in __simple_command
      helpers._check_command_response(response, None, msg)
    File "/usr/lib64/python2.6/site-packages/pymongo/helpers.py", line 178, in _check_command_response
      raise OperationFailure(msg % errmsg, code, response)
  pymongo.errors.OperationFailure: command SON([('authenticate', 1), ('user', u'root'), ('nonce', u'9e44852e6597a1de'), ('key', u'f132369d21874c9858409e235abff25f')]) failed: auth failed
  </code></pre>
  
  <p>Here is pymongo</p>
  
  <pre><code>import pymongo
  
  connection = pymongo.MongoClient("127.0.0.1")
  connection.api.authenticate("root","1234")
  db = connection.api
  </code></pre>
  
  <p>does pymongo use md5 on password? it looks like there is some different password in mongodb data.</p>
  
  <p>here is mongodb admin system.users data </p>
  
  <p>{
    "user": "root",
    "pwd": "cde0d84e6749c235a3b4e36d945eb6fe",
    "roles": [
      "userAdminAnyDatabase"
    ]
  }</p>
  
  <p>Do you see what is wrong?</p>