阅读量:4
在Linux系统中,MongoDB的权限可以通过以下步骤进行设置:
1. 创建用户和角色
首先,你需要创建一个用户并为其分配适当的角色。MongoDB使用基于角色的访问控制(RBAC)。
使用mongo shell创建用户
mongo
在mongo shell中执行以下命令:
use admin
db.createUser({
user: "myUserAdmin",
pwd: "myUserAdminPwd",
roles: [
{ role: "userAdminAnyDatabase", db: "admin" },
{ role: "readWriteAnyDatabase", db: "admin" }
]
})
使用mongosh shell创建用户(MongoDB 4.0及以上版本)
mongosh
在mongosh shell中执行以下命令:
use admin
db.createUser({
user: "myUserAdmin",
pwd: "myUserAdminPwd",
roles: [
{ role: "userAdminAnyDatabase", db: "admin" },
{ role: "readWriteAnyDatabase", db: "admin" }
]
})
2. 配置MongoDB实例以使用身份验证
编辑MongoDB配置文件(通常是/etc/mongod.conf),确保启用了身份验证:
security:
authorization: enabled
3. 重启MongoDB服务
使配置更改生效:
sudo systemctl restart mongod
4. 使用新用户连接MongoDB
使用新创建的用户连接到MongoDB:
mongo -u myUserAdmin -p myUserAdminPwd --authenticationDatabase admin
5. 创建数据库级别的用户和角色
如果你需要为特定数据库创建用户,可以在目标数据库中创建用户并分配角色。
在mongo shell中创建数据库级别的用户
use myDatabase
db.createUser({
user: "myAppUser",
pwd: "myAppUserPwd",
roles: [
{ role: "readWrite", db: "myDatabase" }
]
})
6. 验证用户权限
你可以使用db.runCommand来验证用户的权限:
db.runCommand({ connectionStatus: 1 })
7. 使用TLS/SSL加密连接(可选)
为了提高安全性,可以配置MongoDB使用TLS/SSL加密连接。这需要在MongoDB配置文件中进行相应的设置,并确保客户端也支持TLS/SSL。
在mongod.conf中启用TLS/SSL
net:
ssl:
mode: requireSSL
PEMKeyFile: /path/to/mongodb.pem
CAFile: /path/to/ca.pem
在客户端连接时启用TLS/SSL
mongo --ssl --sslCAFile /path/to/ca.pem --sslPEMKeyFile /path/to/mongodb.pem -u myUserAdmin -p myUserAdminPwd --authenticationDatabase admin
通过以上步骤,你可以在Linux系统中为MongoDB设置详细的权限和安全性配置。
以上就是关于“Linux系统中MongoDB的权限如何设置”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm