ubuntu

MongoDB在Ubuntu上如何配置认证

小樊
42
2025-06-17 14:55:59
栏目: 云计算

在Ubuntu上配置MongoDB认证涉及几个步骤,包括设置管理员用户、启用认证和配置MongoDB以使用这些凭据。以下是一个详细的指南:

1. 安装MongoDB

首先,确保你已经安装了MongoDB。你可以使用以下命令来安装:

sudo apt update
sudo apt install -y mongodb

2. 启动MongoDB服务

安装完成后,启动MongoDB服务:

sudo systemctl start mongod

3. 创建管理员用户

默认情况下,MongoDB没有启用认证。你需要创建一个管理员用户来启用认证。

3.1 连接到MongoDB

使用mongo shell连接到MongoDB:

mongo

3.2 创建管理员用户

mongo shell中,切换到admin数据库并创建一个管理员用户:

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

4. 启用认证

你需要修改MongoDB的配置文件来启用认证。

4.1 编辑MongoDB配置文件

打开MongoDB的配置文件(通常位于/etc/mongod.conf):

sudo nano /etc/mongod.conf

4.2 修改配置文件

找到security部分,并添加或修改以下行以启用认证:

security:
  authorization: enabled

保存并关闭文件。

5. 重启MongoDB服务

为了使更改生效,重启MongoDB服务:

sudo systemctl restart mongod

6. 使用管理员用户重新连接

使用新创建的管理员用户重新连接到MongoDB:

mongo -u admin -p your_password --authenticationDatabase admin

7. 创建其他用户和角色(可选)

你可以根据需要创建其他用户和角色。例如,创建一个只读用户:

7.1 连接到MongoDB

使用管理员用户连接:

mongo -u admin -p your_password --authenticationDatabase admin

7.2 创建只读用户

mongo shell中,切换到admin数据库并创建一个只读用户:

use your_database
db.createUser({
  user: "readonly_user",
  pwd: "readonly_password",
  roles: ["read"]
})

8. 验证配置

确保你的配置正确无误。你可以尝试使用新创建的用户连接到数据库:

mongo -u readonly_user -p readonly_password --authenticationDatabase your_database

如果一切配置正确,你应该能够成功连接并执行只读操作。

通过以上步骤,你已经在Ubuntu上成功配置了MongoDB认证。

0
看了该问题的人还看了