...

/

Authentication, Authorization, and Common Errors

Authentication, Authorization, and Common Errors

Understand the difference between authentication (verifying user identity) and authorization (controlling user actions) in MongoDB, and how to enable authentication, create users, and handle common errors.

Authentication verifies the identity of a user (e.g., username and password). Whereas, authorization determines what actions an authenticated user is allowed to perform (based on roles and permissions). Authentication keeps unauthorized users out, and authorization limits what authenticated users can do.

Press + to interact
Summary of the process
Summary of the process

How MongoDB handles authentication

By default, MongoDB may run without authentication (not recommended for production). We can enable authentication so users must log in before accessing the database. To enable authentication, we need to perform the following steps. Switch to the admin database to create an administrative user.

Press + to interact
mongosh admin

Note: Global roles like userAdminAnyDatabase, readWriteAnyDatabase, and dbAdminAnyDatabase

are defined only in the admin database.

Press + to interact
db.createUser({
user: "superadmin",
pwd: "securepass",
roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]
})
...