以下是CentOS下MongoDB权限管理核心策略及操作要点:
/etc/mongod.conf,设置security.authorization: enabled,重启服务生效。admin数据库,使用db.createUser()创建管理员用户,分配root或userAdminAnyDatabase等角色,例如:use admin
db.createUser({
user: "admin",
pwd: "强密码",
roles: [{ role: "root", db: "admin" }]
})
read(只读)、readWrite(可编辑)、dbAdmin(数据库管理)、userAdmin(用户管理)等角色。db.createRole()定义特定权限集合,如限制对特定集合的操作。db.grantRolesToUser()授予权限,db.revokeRolesFromUser()回收权限。net.bindIp指定允许连接的IP地址。net.ssl.mode: requireSSL,确保数据传输安全。security.auditLog配置,记录用户操作。db.getUser()查看用户权限,清理冗余或过期权限。关键命令参考:
db.createUser({ user: "用户名", pwd: "密码", roles: [角色定义] })db.getUser("用户名")db.grantRolesToUser()/db.revokeRolesFromUser()以上策略结合了最小权限原则与最小化攻击面设计,可根据实际业务需求调整。