综述

MongoDB默认在msi安装后处于非认证状态,此时我们不需要进行认证就可以连接并且使用MongoDB服务器,但出于安全性考虑,为MongoDB添加认证服务是必要的。在添加成功后使用非认证的方式连接MongoDB会被以”requires authentication”拒绝连接。而以用户名+密码的方式进行连接的用户可以正常连接使用。

拒绝连接的提示

有以下步骤

  1. 创建管理员用户
  2. 开启用户认证
  3. 设置允许从外网进行访问
  4. 防火墙开启服务器端口
  5. 测试连接

创建管理员用户

确保MongoDB服务在后台正常运行,如果没有则尝试启动服务,启用失败就检查配置文件,默认win的配置文件存放在bin目录下的cfg文件

进入安装目录的bin目录下,打开终端

输入mongo

1
mongo

使用admin数据库

1
use admin

创建root权限用户

1
db.createUser({user:"root",pwd:"xxxxxxxx",roles:["root"]})

如果返回Successfully added user …. 即创建成功

开启用户认证和设置允许从外网进行访问

接下来进入bin目录打开配置文件

1
2
security:
authorization: enabled

并使用搜索功能查找bindIp字段,修改为任意IP段

修改为0.0.0.0

防火墙开启服务器端口

开启的端口号为27017

测试连接

使用Navicat客户端进行连接测试输入用户名和密码

编辑连接

连接成功