在Linux下为MongoDB设置权限,通常需要创建一个专用的MongoDB用户,并为其分配适当的角色和权限。以下是设置权限的步骤:
首先,确保已经安装了MongoDB。如果尚未安装,请参考官方文档:https://docs.mongodb.com/manual/installation/
创建一个新的操作系统用户,用于运行MongoDB服务。例如,使用以下命令创建一个名为mongodb的用户:
sudo adduser mongodb
mongodb用户。默认情况下,MongoDB数据目录位于/data/db。使用以下命令更改所有权:sudo chown -R mongodb:mongodb /data/db
# 对于基于Systemd的系统(如Ubuntu 16.04+、CentOS 7+)
sudo systemctl start mongod
sudo systemctl enable mongod
# 对于基于SysVinit的系统(如Ubuntu 14.04、CentOS 6)
sudo service mongod start
sudo chkconfig mongod on
mongo shell连接到MongoDB实例:mongo
myuser的用户,并为其分配readWrite角色,以便该用户可以在名为mydb的数据库上执行读写操作:use mydb
db.createUser({
user: "myuser",
pwd: "mypassword",
roles: ["readWrite"]
})
现在,myuser用户可以使用其凭据在mydb数据库上执行读写操作。要使用新创建的用户进行身份验证,请在mongo shell中输入以下命令:
mongo -u myuser -p mypassword --authenticationDatabase mydb
以上步骤为MongoDB在Linux下设置了基本的权限。你可以根据需要为用户分配其他角色,例如dbAdmin、userAdmin等。更多关于MongoDB角色和权限的信息,请参考官方文档:https://docs.mongodb.com/manual/reference/built-in-roles/