mongoDB设置访问用户名密码

在 MongoDB 中设置访问用户名和密码可以通过以下步骤实现:

1. 启用身份验证

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

  1. 找到 mongod.conf 配置文件,路径通常为 /etc/mongod.conf(Linux)或 C:\Program Files\MongoDB\Server\{版本号}\bin\mongod.cfg(Windows)。

  2. 找到以下部分,并将 security.authorization 设置为 enabled

    yaml

    security: authorization: enabled

  3. 保存并重新启动 MongoDB 服务,以启用身份验证。

2. 创建管理员用户

在 MongoDB Shell 中使用以下命令创建管理员用户。管理员用户将拥有对数据库的所有权限。

  1. 打开 MongoDB Shell,连接到 MongoDB 实例:

    mongo

  2. 选择 admin 数据库:

    use admin

  3. 创建管理员用户,用户名为 admin,密码为 password

    db.createUser({ user: "admin", pwd: "password", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })

  4. 完成后,使用 exit 退出 MongoDB Shell。

3. 为特定数据库创建用户

可以为特定数据库(例如 mydatabase)创建用户:

  1. 重新连接 MongoDB,并切换到目标数据库:

    mongo -u "admin" -p "password" --authenticationDatabase "admin" use mydatabase

  2. 创建数据库用户:

    db.createUser({ user: "myuser", pwd: "mypassword", roles: [{ role: "readWrite", db: "mydatabase" }] })

  3. 此用户将具有对 mydatabase 的读写权限。

4. 使用用户名和密码连接 MongoDB

启用身份验证并创建用户后,可以通过以下方式连接 MongoDB:

mongo -u "用户名" -p "密码" --authenticationDatabase "admin"

例如:

mongo -u "admin" -p "password" --authenticationDatabase "admin"

相关推荐
摘星怪sec31 分钟前
【漏洞复现】|方正畅享全媒体新闻采编系统reportCenter.do/screen.do存在SQL注入
数据库·sql·web安全·媒体·漏洞复现
基哥的奋斗历程40 分钟前
学到一些小知识关于Maven 与 logback 与 jpa 日志
java·数据库·maven
苏-言1 小时前
MyBatis最佳实践:提升数据库交互效率的秘密武器
数据库·mybatis
gyeolhada1 小时前
计算机组成原理(计算机系统3)--实验八:处理器结构拓展实验
java·前端·数据库·嵌入式硬件
码农丁丁1 小时前
为什么数据库不应该使用外键
数据库·mysql·oracle·数据库设计·外键
随心Coding3 小时前
【MySQL】存储引擎有哪些?区别是什么?
数据库·mysql
m0_748237054 小时前
sql实战解析-sum()over(partition by xx order by xx)
数据库·sql
dal118网工任子仪5 小时前
61,【1】BUUCTF WEB BUU XSS COURSE 11
前端·数据库·xss
萌小丹Fighting6 小时前
【Postgres_Python】使用python脚本批量创建和导入多个PG数据库
数据库
青灯文案16 小时前
Oracle 数据库常见字段类型大全及详细解析
数据库·oracle