📜  如何在 MongoDB 上启用身份验证?(1)

📅  最后修改于: 2023-12-03 14:52:26.923000             🧑  作者: Mango

如何在 MongoDB 上启用身份验证?

在 MongoDB 数据库中,启用身份验证可以提高数据库的安全性。本文将介绍如何在 MongoDB 上启用身份验证。

步骤一:启用认证

首先,需要在 MongoDB 的配置文件中启用身份验证。

  1. 打开 MongoDB 的配置文件,该文件通常位于 /etc/mongod.conf(Linux)或 C:\Program Files\MongoDB\Server\{version}\bin\mongod.cfg(Windows)。
  2. 修改配置文件,在 security: 选项下添加 authorization: enabled
  3. 保存并关闭配置文件。
security:
  authorization: enabled
步骤二:创建管理员用户

启用身份验证后,需要创建管理员用户来管理 MongoDB 数据库。管理员用户的权限最高,可以进行所有数据库操作。

  1. 打开命令行工具。
  2. 连接到 MongoDB 数据库。例如,连接到本地数据库可以使用以下命令:mongo
  3. 切换到 admin 数据库。use admin
  4. 创建一个管理员用户。例如,创建用户名为 admin,密码为 password 的用户:
db.createUser({
  user: "admin",
  pwd: "password",
  roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
})

以上命令将创建一个管理员用户,并将其添加到 admin 数据库中。

步骤三:创建其他用户

除了管理员用户外,可能还需要为其他用户创建账号。

  1. 切换到要添加用户的数据库。
  2. 创建一个新用户。例如,创建用户名为 user1,密码为 password 的用户:
db.createUser({
  user: "user1",
  pwd: "password",
  roles: [ { role: "readWrite", db: "mydb" } ]
})

以上命令将创建一个名为 user1 的用户,并将其添加到 mydb 数据库中。该用户拥有对 mydb 数据库的读写权限。

步骤四:测试身份验证

在完成以上步骤后,需要测试身份验证是否成功启用了。

  1. 退出命令行工具。
  2. 重新连接到 MongoDB 数据库,但这次需要输入用户名和密码。例如,连接到 mydb 数据库,用户名为 user1,密码为 password
mongo -u user1 -p password --authenticationDatabase mydb

以上命令将使用用户 user1 和密码 password 连接到 MongoDB,并将 mydb 数据库用作身份验证数据库。如果一切正常,将会看到 MongoDB 的提示符。

结论

启用身份验证可以为 MongoDB 数据库提供更高的安全性。通过按照上述步骤在 MongoDB 上启用身份验证,可以保护敏感数据免受未经授权的访问。