温馨提示×

MongoDB在Ubuntu上的认证方式有哪些

小樊
49
2025-06-15 14:39:16
栏目: 云计算

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

启用认证

默认情况下,MongoDB在Ubuntu上是不启用认证的。你需要编辑MongoDB的配置文件来启用认证。

  • 打开MongoDB配置文件:
sudo nano /etc/mongod.conf
  • 在security部分添加或修改以下行:
security:
  authorization: enabled
  • 保存并关闭文件。

  • 重启MongoDB服务以使配置生效:

sudo systemctl restart mongod

创建管理员用户

在MongoDB中创建一个管理员用户,以便你可以使用该用户进行认证。

  • 连接到MongoDB shell:
mongo
  • 切换到admin数据库:
use admin
  • 创建管理员用户(替换 <username><password> 为你选择的用户名和密码):
db.createUser({
  user: <username>,
  pwd: <password>,
  roles: [root]
})
  • 退出MongoDB shell:
exit

使用管理员用户重新连接

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

mongo -u <username> -p <password> --authenticationDatabase admin

配置其他数据库的用户

如果你需要在其他数据库中创建用户,可以按照以下步骤操作:

  • 连接到MongoDB shell:
mongo
  • 切换到你想要创建用户的数据库(例如 mydatabase):
use mydatabase
  • 创建新用户(替换 <username><password> 为你选择的用户名和密码):
db.createUser({
  user: <username>,
  pwd: <password>,
  roles: [readWrite, dbOwner]
})
  • 退出MongoDB shell:
exit

配置MongoDB客户端连接

为了确保所有客户端连接都使用认证,你可以在客户端连接字符串中指定用户名和密码。例如,如果你使用的是MongoDB Compass,可以在连接字符串中添加 usernamepassword 参数:

mongodb://<username>:<password>@localhost:27017/mydatabase

通过以上步骤,你就可以在Ubuntu上成功配置MongoDB认证。

0