自学内容网 自学内容网

MongoDB 中设置登录账号密码可以通过以下步骤实现

1. 启用身份验证

默认情况下,MongoDB 不启用身份验证,需要修改配置文件启用。

打开 MongoDB 配置文件(通常是 mongod.conf)。
确保配置中有以下行(或添加):

security:
  authorization: enabled

保存文件并重启 MongoDB 服务:

sudo systemctl restart mongod

2. 连接到 MongoDB 无验证模式

在未启用身份验证之前,可以直接用默认方式连接 MongoDB。

mongo

3. 切换到 admin 数据库

用户认证信息通常保存在 admin 数据库中。

use admin

4. 创建管理员用户

使用以下命令创建一个具有管理权限的用户:

db.createUser({
  user: "adminUser",
  pwd: "strongPassword123", // 设置安全的密码
  roles: [{ role: "userAdminAnyDatabase", db: "admin" }]
})

说明:

userAdminAnyDatabase 是一个角色,允许用户管理所有数据库的用户。

5. 验证管理员用户创建成功

断开连接后,重新以管理员身份连接 MongoDB:

mongo -u "adminUser" -p "strongPassword123" --authenticationDatabase "admin"

6. 为其他数据库设置用户权限

切换到目标数据库(例如 testDB)并创建用户:

use testDB
db.createUser({
  user: "testUser",
  pwd: "securePassword456", // 用户密码
  roles: [{ role: "readWrite", db: "testDB" }]
})

7. 测试身份验证

使用新创建的用户登录:

mongo -u "testUser" -p "securePassword456" --authenticationDatabase "testDB"

8. 验证身份验证功能是否正常

在启用 security.authorization 后,所有操作都需要身份验证,否则会被拒绝。


原文地址:https://blog.csdn.net/sinat_17584329/article/details/144016065

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!