在Ubuntu上为MongoDB设置权限管理,您需要遵循以下步骤:
安装MongoDB: 如果您还没有安装MongoDB,请按照官方文档的说明进行安装:https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/
启动MongoDB服务: 使用以下命令启动MongoDB服务:
sudo systemctl start mongod
创建管理员用户: 首先,切换到MongoDB shell:
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角色的详细信息,请参阅官方文档:https://docs.mongodb.com/manual/reference/built-in-roles/