mongodb在centos上的权限管理
一、基础权限管理步骤
- 启用认证
编辑配置文件/etc/mongod.conf
,添加security.authorization: enabled
,重启服务生效。 - 创建管理员用户
切换到admin
数据库,使用db.createUser()
创建具有root
角色的管理员账号。use admin db.createUser({ user: "admin", pwd: "强密码", roles: [{ role: "root", db: "admin" }] })
- 创建普通用户并分配权限
- 指定数据库创建用户,分配如
readWrite
(读写)、dbAdmin
(管理集合/索引)等角色。 - 示例:为用户
myuser
分配mydatabase
数据库的读写权限use mydatabase db.createUser({ user: "myuser", pwd: "密码", roles: [{ role: "readWrite", db: "mydatabase" }] })
- 指定数据库创建用户,分配如
二、权限操作命令
- 查看用户权限:
db.getUser("用户名")
。 - 修改用户密码:
db.changeUserPassword("用户名", "新密码")
。 - 删除用户:
db.dropUser("用户名")
。 - 授予权限:
db.grantRolesToUser("用户名", ["角色1", "角色2"])
。 - 撤销权限:
db.revokeRolesFromUser("用户名", ["角色1", "角色2"])
。
三、关键注意事项
- 角色说明:
root
:超级权限,可管理所有数据库。readWriteAnyDatabase
:可读写所有非local
/config
数据库。dbOwner
:等价于readWrite
+dbAdmin
+userAdmin
。
- 认证连接:使用
--authenticationDatabase
指定认证库(如admin
)。 - 安全增强:建议限制远程访问 IP、启用 SSL/TLS 加密通信。
四、参考来源
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权请联系我们,一经查实立即删除!