Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-37520

"too many users are authenticated" after getSiblingDB() and auth()

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Minor - P4
    • Resolution: Duplicate
    • 4.0.1, 4.0.2
    • None
    • None
    • None
    • ALL
    • Hide

      This is how I fare with MongoDB 4.0:

       ~$ mongo mongodb://daniel:mahpass@127.0.0.1:27017/admin
      {{ mongo $MONGO_URI/admin}}
      {{ MongoDB shell version v4.0.2}}
      {{ connecting to: mongodb://127.0.0.1:27017/admin}}
      {{ MongoDB server version: 4.0.2}}
      {{ > var mother = db.getSiblingDB('mother')}}
      {{ > mother.auth(}}{{

      { user: 'daniel', pwd: 'mahpass' }

      }})
      {{ 1}}
      {{ > mother.sites.find()}}
      {{ Error: error: {}}
      {{ "ok" : 0,}}
      {{ "errmsg" : "too many users are authenticated",}}
      {{ "code" : 13,}}
      {{ "codeName" : "Unauthorized"}}
      {{ }}}
      {{ >}}

      Show
      This is how I fare with MongoDB 4.0:  ~$ mongo mongodb://daniel:mahpass@127.0.0.1:27017/admin {{ mongo $MONGO_URI/admin}} {{ MongoDB shell version v4.0.2}} {{ connecting to: mongodb://127.0.0.1:27017/admin}} {{ MongoDB server version: 4.0.2}} {{ > var mother = db.getSiblingDB('mother')}} {{ > mother.auth(}}{{ { user: 'daniel', pwd: 'mahpass' } }} ) {{ 1}} {{ > mother.sites.find()}} {{ Error: error: {}} {{ "ok" : 0,}} {{ "errmsg" : "too many users are authenticated",}} {{ "code" : 13,}} {{ "codeName" : "Unauthorized"}} {{ }}} {{ >}}

    Description

      With MongoDB versions 4 (4.0.1 and 4.0.2 tested), I cannot switch to another db, authenticate, and operate with that db. In MongoDB 3.6, I can successfully do this:

      ~$ mongo mongodb://daniel:mahpass@127.0.0.1:27017/admin
      {{ MongoDB shell version v3.6.7}}
      {{ connecting to: mongodb://127.0.0.1:27017/admin}}
      {{ MongoDB server version: 3.6.7}}
      {{ > var mother = db.getSiblingDB('mother')}}
      {{ > mother.auth(}}{{

      { user: 'daniel', pwd: 'mahpass' }

      }})
      {{ 1}}
      {{ > mother.sites.find()}}{{

      { "_id" : ObjectId("54b1d0a26629edca9cbef6c3"), "client" : "Dev", "dbName" : "mother", "domain" : "mother.localhost", "licenses" : 0, "name" : "Mother" }

      }}

      >

      My user was created on the admin database first, with "dbOwner" and "userAdminAnyDatabase" rights, and then on the "mother" database with "dbOwner" rights.

      In other words, these are two different users, one on each db.

      Googling the error, I only get four hits, one in Chinese, and the remaining I cannot see how are related. I've searched through the 4.0 changes, and cannot find any documented change that would cause this restriction — if indeed it is a restriction? Maybe this isn't a bug, and it's just me misbehaving?

      Thanks

      Daniel

      Attachments

        Issue Links

          Activity

            People

              nick.brewer Nick Brewer
              Daniel Smedegaard Buus Daniel Smedegaard Buus [X]
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: