在Ubuntu上配置MongoDB认证涉及几个步骤,包括启用认证、创建管理员用户以及配置MongoDB以使用这些凭据。以下是详细的步骤指南:
1. 安装MongoDB
如果你还没有安装MongoDB,可以使用以下命令进行安装:
sudo apt update
sudo apt install -y mongodb
2. 启用认证
默认情况下,MongoDB在Ubuntu上是不启用认证的。你需要编辑MongoDB的配置文件来启用认证。
- 打开MongoDB配置文件:
sudo nano /etc/mongod.conf
- 在
security部分添加或修改以下行:
security:
authorization: enabled
- 保存并关闭文件。
3. 重启MongoDB服务
为了使配置生效,你需要重启MongoDB服务:
sudo systemctl restart mongod
4. 创建管理员用户
在MongoDB中创建一个管理员用户,以便你可以使用该用户进行认证。
- 连接到MongoDB shell:
mongo
- 切换到
admin数据库:
use admin
- 创建管理员用户(替换
和为你选择的用户名和密码):
db.createUser({
user: "",
pwd: "",
roles: ["root"]
})
- 退出MongoDB shell:
exit
5. 使用管理员用户重新连接
使用新创建的管理员用户重新连接到MongoDB:
mongo -u -p --authenticationDatabase admin
6. 配置其他数据库的用户
如果你需要在其他数据库中创建用户,可以按照以下步骤操作:
- 连接到MongoDB shell:
mongo -u -p --authenticationDatabase admin
- 切换到你想要创建用户的数据库(例如
mydatabase):
use mydatabase
- 创建新用户(替换
和为你选择的用户名和密码):
db.createUser({
user: "",
pwd: "",
roles: ["readWrite", "dbOwner"]
})
- 退出MongoDB shell:
exit
7. 配置MongoDB客户端连接
为了确保所有客户端连接都使用认证,你可以在客户端连接字符串中指定用户名和密码。例如,如果你使用的是MongoDB Compass,可以在连接字符串中添加username和password参数:
mongodb://:@localhost:27017/mydatabase
通过以上步骤,你就可以在Ubuntu上成功配置MongoDB认证。