TMAegis
More rules for mongodb

MongoDB

TMA-MONGODB-3.1

Ensure least privilege for database accounts

HighLevel 1Manual reviewmongodb

Description

MongoDB grants access to data and commands through "role-based" approach, MongoDB is shipped with built-in roles that provide the different levels of access commonly needed in a database system. In addition, you can create custom-roles.

How it is checked

Audit method: Manual review

This recommendation cannot be checked automatically. A scan lists it with these instructions when you pass --include-manual.

In mongosh run db.getSiblingDB("admin").system.users.find({"roles.role": {$in: ["dbOwner", "userAdmin", "userAdminAnyDatabase"]}, "roles.db": "admin"}, {user: 1, roles: 1}). Any account returned holds a built-in dbOwner/userAdmin/userAdminAnyDatabase role scoped to the admin database and must be justified or dropped.

How it is fixed

Fix method: Guidance or infrastructure patch

If any accounts were listed with built in-roles: dbOwner userAdmin userAdminAnyDatabase in "admin" database role then drop them.

Properties

Operating systems
Any
Tags
mongodbprivileges
Reference
CIS MongoDB 8 Benchmark v2.0.0 - 3.1 Ensure least privilege for database accounts