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.

32

Share

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

Releted 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

AHMEDABAD

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

Sales: +91 635-261-6164