MongoDB 5.0版本如何配置密码认证保护数据库访问安全
MongoDB 5.0 配置访问密码操作步骤
1. 创建超级管理员账号
先保持MongoDB当前无认证启动状态,打开终端/命令行执行mongosh连接数据库实例,切换到admin系统库后创建管理员账号:
use admin db.createUser({ user: "自定义管理员账号名", pwd: "自定义高强度访问密码", roles: [ { role: "root", db: "admin" } ] })
执行成功后shell会返回用户添加成功的提示,此时管理员账号创建完成。
2. 修改配置文件开启身份认证
找到对应系统的MongoDB配置文件:
- Windows默认路径:
C:\Program Files\MongoDB\Server\5.0\bin\mongod.cfg - Linux(apt/yum安装默认路径):
/etc/mongod.conf
在配置文件中找到security配置段,添加/修改为如下内容(注意YAML格式必须用2空格缩进,禁止使用Tab键,否则服务会启动失败):
security: authorization: enabled
3. 重启MongoDB服务生效配置
根据操作系统执行对应重启操作:
- Windows:以管理员身份打开命令提示符,执行
net stop MongoDB && net start MongoDB,也可以在系统服务面板找到MongoDB服务手动点击重启 - Linux(systemd管理):执行
sudo systemctl restart mongod
4. 验证认证配置有效性
重启完成后,直接执行mongosh连接实例,此时执行show dbs等命令会返回无权限报错,说明认证机制已经生效。
可以通过以下两种方式完成认证登录:
- 连接时直接指定认证参数:
mongosh -u 你的管理员账号 -p 你的管理员密码 --authenticationDatabase admin - 连接后手动认证:
use admin db.auth("你的管理员账号", "你的管理员密码")
认证返回1即为登录成功,可以正常执行数据库操作。
补充建议:生产环境建议遵循最小权限原则,不要直接用root账号运行业务,针对每个业务数据库单独创建对应readWrite权限的普通账号,降低账号泄露带来的风险。
内容的提问来源于stack exchange,提问作者fcva
相关产品推荐
相关产品推荐

