Security Issue Analysis

MongoDB does not enable authentication by default during installation, which poses serious security risks.

User Management Operations

Create User

use admin
db.createUser({
  user: "admin",
  pwd: "admin123",
  roles: [{role: "root", db: "admin"}]
})

Modify Password

db.changeUserPassword('admin', 'admin@123')

Authentication Startup Configuration

Configure in mongod.conf:

security:
  authorization: enabled

Role Details

Database-Level Roles

  • read: Read data from specified database
  • readWrite: Read/write permissions
  • dbAdmin: Index management
  • userAdmin: User account management
  • dbOwner: Full database control

Cross-Database Roles

  • readAnyDatabase: Read permissions for all databases
  • readWriteAnyDatabase: Read/write permissions for all databases
  • userAdminAnyDatabase: Global user management

Cluster Administration Roles

  • clusterAdmin: Sharding management, replica set configuration
  • root: Superuser permissions

Common Errors

ErrorFix
Authentication failedCheck authSource parameter
not authorized on dbAdd corresponding database role permissions
Cannot connect remotelyCheck bindIp configuration