我们知道mongodb配置教程一般没有开启身份验证功能,这样部署起来如果开启外部访问的话,外部通过IP地址即可连接到mongodb上获取数据,对数据安全是非常有影响的,那么如何开启mongodb的身份验证,下面就给大家配置一个实例
此前更新了一个安装教程,查看我的笔记https://sulao.cn/post/277.html,这个是按照这个笔记的后续操作
mongo use admin; db.createUser({user: "merci",pwd: "admin",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]})
上述就创建了一个认证的账户merci,同时设置密码是admin
执行上述操作以后我们再重启mongodb,在启动的时候
/usr/local/mongodb/bin/mongod --bind_ip 127.0.0.1 -f /usr/local/mongodb/conf/mongodb.conf 换成 /usr/local/mongodb/bin/mongod --auth --bind_ip 127.0.0.1 -f /usr/local/mongodb/conf/mongodb.conf
接着我们来试着按之前的方式登录
mongo show dbs;
这次直接报错了
可以看到可以登录,但是执行任何命令就返回了错误信息,说明认证模式已经开启了
我们接着按验证身份来登录mongo再试试
mongo -u 'merci' -p 'admin' --authenticationDatabase "admin" show dbs;
这样认证就开启了,我们使用认证身份登录操作就是OK的。