I have the following user:

{
    "_id" : "admin.root",
    "user" : "root",
    "db" : "admin",
    "roles" : [
        {
            "role" : "root",
            "db" : "admin"
        }
    ]
}

And for my database:

{
    "_id" : "mydb.mydbDbOwner",
    "user" : "mydbDbOwner",
    "db" : "mydb",
    "roles" : [
        {
            "role" : "dbOwner",
            "db" : "mydb"
        }
    ]
}

I can't connect via Robomongo on localhost:

The same goes for...

Database: mydb
User Name: root

Database: mydb
User Name: mydbDbOwner

How can I fix this problem?

Solution 1

Robomongo 0.8.x doesn't have support for the new SCRAM-SHA-1 authentication which was the default authentication method added in MongoDB 3.0.

Robomongo 0.9.0 RC4 (Feb 2016) added support for SCRAM-SHA-1, but if you are using a modern version of MongoDB server you should upgrade to the latest version of Robomongo (now Robo3T) currently available.

There is also an officially maintained free GUI, MongoDB Compass, which is more actively updated than Robo3T. MongoDB Compass 1.22+ (Sept 2020) includes an embedded MongoDB shell.

Solution 2

I was experiencing exactly the same issue on Mac. I removed the Robomongo client and download the latest version from their website. It just works :)

Solution 3

You can change localhost to 127.0.0.1

Solution 4

You can try Mongo-Express (a web-based tool).

However, you need to upgrade the MongoDB-Node.js library to be at least (1.4.29) according to Upgrade to SCRAM.

I tried and it worked for my case. You can find the below useful command for that:

npm install mongo-express cd node-modules/mongo-express

Change the config.default.js file to config.js and update it to include your database connection (e.g., username, password, connection's URL, etc.)

Edit the package.jon file and change the version of MongoDB to "~1.4.29"

Run: npm update

To start the web application: execute command "node app" and the web site will be available at http://localhost:8081/.

Solution 5

I just upgraded to the new version 1.0 of Robomongo. As a few people stated in here, 0.8.x didnt support SCRAM-SHA-1, which is default in MongoDB 3.0. In prior versions it was MONGODB-CR.

But anyone who is downloading Robomongo from this point on shouldn't have an issue with authentication.

https://robomongo.org/

This bottom links explains SCRAM-SHA a bit more. I suggest reading into it if heavily using MongoDB.

SCRAM

Solution 6

Possibility for connection through an SSH tunnel with Robomongo is back in the RC8 version. See GitHub issue Where is the SSH tunnel settings on v 0.9.0 RC2 Mac version #1008.