How to do user authentication in MongoDB, Prevent others to access MongoDB ?

Apr 21st, 2016

How to do user authentication in MongoDB, Prevent others to access MongoDB ?

MongoDB, a cross-platform document-oriented database. Classified as a NoSQL database, MongoDB eschews the traditional table-based relational database structure in favor of JSON-like documents with dynamic schemas (MongoDB calls the format BSON), making the integration of data in certain types of applications easier and faster.

Here I am going to explain how to apply user-name and password(authenticate) to mongoDB’s database.

#1. Open shell command. Fire this command

command – mongo
output-
MongoDB shell version: 3.0.4
connecting to: test

#2.

command – show dbs;
output-
admin 0.078GB
local 0.078GB
auth_db 0.078GB

#3.

command – use auth_db;
output-
switched to auth_db

Here, we have selected auth_db Database for apply authentication.

#4. Fire query :

db.createUser({user:”YOUR_USERNAME”, pwd:”YOUR_PWD”,roles:[“readWrite”,”dbAdmin”]})

We have created User of database ‘auth_db’. You can set your user-name and password to above query.

Make sure authentication is true. You can set authentication = true in MongoDB.conf file.

  • Option 1: In mongod.conf, Remove comment and make it true.
    auth=true;- restart mongoDB – sudo service mongod restart
  • Option 2 : command to run mongodb with auth true :- mongod -auth

#5. In database config files in Nodejs

var mongoose = require('mongoose');
var uri = 'mongodb://localhost:27017/auth_db';
var options = {
user: 'YOUR_USERNAME',
pass: 'YOUR_PWD'
}
mongoose.connect(uri, options, function(err, result){
console.log('err -->' + JSON.stringify(err));
});

Without user-name and password, would not able to perform an operation with the database. If you don’t want to use authentication to database just make auth=true is commented in MongoDB.conf file or start mongo without -auth i.e mongo . Please do not forget restart MongoDB.

You can drop a comment for any questions or feedback. We Will get back to you soon.

Leave a comment

Let's Discuss Your Project

Get free consultation and let us know your project idea to turn
it into an amazing digital product.

Let’s talk

NEWS & BLOG

Related Blogs

Digital Transformations Re-Engineering for Success for the 21st Century

Big Data Apr 25th, 2017

Digital Transformations Re-Engineering for Success for ...

Read more
Auto Backup MongoDB Database with NodeJS on server

Big Data Jan 13th, 2017

Auto Backup MongoDB Database with NodeJS on server...

Read more
8 Simple steps to install MongoDB with authentication on EC2 AMI Linux

Big Data Jan 10th, 2017

8 Simple steps to install MongoDB with authentication o...

Read more

INQUIRY

Let's get in touch

UNITED STATES

31236 Meadowview Square,
Delmar, DE 19940, USA

Sales: +1 (732) 927-5544

UNITED KINGDOM

13 Layton Road, Hounslow,
London, TW3 1YJ

Sales: +44 7404 607567

INDIA

A-201, The Capital, Science City Rd, Ahmedabad, Gujarat 380060.

Sales: +91 635-261-6164

For Project Inquiries