ubuntu

MongoDB在Ubuntu上的权限设置指南

小樊
37
2025-07-03 19:49:04
栏目: 云计算

在Ubuntu上为MongoDB设置权限管理,可以按照以下步骤进行:

安装MongoDB

如果您还没有安装MongoDB,请按照官方文档的说明进行安装:MongoDB官方安装指南

启动MongoDB服务

使用以下命令启动MongoDB服务:

sudo systemctl start mongod

连接到MongoDB

使用 mongo 命令连接到MongoDB实例:

mongo

创建管理员用户

admin 数据库中创建一个具有用户管理权限的用户。例如,创建一个名为 adminUser 的用户,并设置密码为 your_password

use admin
db.createUser({
  user: "adminUser",
  pwd: "your_password",
  roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
})

输入 exit 退出MongoDB shell。

启用身份验证

编辑MongoDB配置文件 /etc/mongod.conf,找到 security 部分并取消注释以下行:

security:
  authorization: enabled

保存并关闭文件。然后重启MongoDB服务以应用更改:

sudo systemctl restart mongod

使用管理员用户登录

使用以下命令登录MongoDB,使用您刚刚创建的管理员用户和密码:

mongo -u adminUser -p your_password --authenticationDatabase admin

创建数据库和用户

现在您可以使用管理员账户登录MongoDB,为您的应用程序创建数据库和用户。例如,创建一个名为 myDatabase 的数据库,并为其创建一个名为 myUser 的用户,设置密码为 user_password,并授予读取和写入权限:

use myDatabase
db.createUser({
  user: "myUser",
  pwd: "user_password",
  roles: [ { role: "readWrite", db: "myDatabase" } ]
})

输入 exit 退出MongoDB shell。

使用新创建的用户登录

使用以下命令登录MongoDB,使用您刚刚创建的 myUser 用户和密码:

mongo -u myUser -p user_password --authenticationDatabase myDatabase

现在您已经为MongoDB设置了权限管理。您可以根据需要创建更多的数据库和用户,并为他们分配不同的角色和权限。有关MongoDB角色的详细信息,请参阅官方文档:MongoDB内置角色参考

0
看了该问题的人还看了