centos

MongoDB如何启用认证机制

小樊
49
2025-08-18 15:41:31
栏目: 云计算

要在MongoDB中启用认证机制,您需要按照以下步骤操作:

  1. 创建管理员用户: 首先,您需要创建一个具有管理员权限的用户。为此,请连接到MongoDB实例并切换到admin数据库。然后使用createUser命令创建一个新用户,并为其分配userAdminAnyDatabase角色,该角色允许用户管理所有数据库的用户和角色。
mongo -u <your_username> -p <your_password> --authenticationDatabase admin

在MongoDB shell中执行以下命令:

use admin
db.createUser({
  user: "adminUser",
  pwd: "your_password",
  roles: ["userAdminAnyDatabase"]
})
  1. 启用认证: 要启用认证,您需要在MongoDB配置文件中设置security.authorization选项。配置文件的位置因操作系统而异,例如,在Linux上,它通常位于/etc/mongod.conf

使用文本编辑器打开配置文件,并找到security部分。将authorization选项设置为enabled

security:
  authorization: enabled

保存并关闭配置文件。

  1. 重新启动MongoDB服务: 要使更改生效,您需要重新启动MongoDB服务。在Linux上,您可以使用以下命令:
sudo systemctl restart mongod

在Windows上,您可以在“服务”管理器中重新启动MongoDB服务。

  1. 使用管理员用户登录: 现在,您需要使用刚刚创建的管理员用户登录到MongoDB实例:
mongo -u adminUser -p your_password --authenticationDatabase admin
  1. 为用户分配角色和权限: 现在您已经启用了认证,您可以为其他用户分配角色和权限。例如,要为用户分配读取和写入特定数据库的权限,您可以执行以下命令:
use your_database
db.createUser({
  user: "your_user",
  pwd: "your_password",
  roles: ["readWrite"]
})

完成这些步骤后,您的MongoDB实例将启用认证机制,所有连接都需要提供有效的用户名和密码。

0
看了该问题的人还看了