MongoDB开启权限认证的方法步骤详解

  

  

最近在生产环境中MongoDB已经使用有一段时间了,但对于MongoDB的数据存储一直没有使用到权限访问(MongoDB默认设置为无权限访问限制),最近在酷壳网看了一篇技术文章(https://coolshell.cn/& # 63; s=从+ MongoDB +“赎金事件”+看安全问题,从=timeline& isappinstalled=0)介绍的MongoDB未开启权限认证导致数据被黑客窃取,要比特币赎回的事件,考虑到数据安全的原因特地花了一点时间研究了一下,我现在用的版本是MongoDB3.4.2,在Linux系统上进行的验证,我在win8中的上也是类似操作方式开启。

  

和其它数据库一样,权限的管理都差不多一样。
  

  

但不同的是mongodb的用户是跟数据库相关联的,具体的数据库,还是需要有对应的用户,也就是说哪怕是超级管理员也不能操作其他数据库的。
  

  

mongodb存储所有的用户信息在管理数据库的集合系统。用户中,保存用户名:密码和数据库信息。
  mongodb默认不启用授权认证,只要能连接到该服务器,就可连接到mongod。若要启用安全认证,需要更改配置文件参数- auth。

  

  

<强>一、非授权方式创建用户

  

1,先以非授权方式(即不带- auth参数)登录创建系统管理员用户

  

 MongoDB开启权限认证的方法步骤详解

  

2,进入到mongodb的安装本目录下

  

 MongoDB开启权限认证的方法步骤详解

  

3,客户端登录

  

 MongoDB开启权限认证的方法步骤详解

  

4,切换到管理数据库

  

 MongoDB开启权限认证的方法步骤详解

  

5,为管理数据库创建用户了

  

 MongoDB开启权限认证的方法步骤详解

  

6,查看用户

  

使用db.system.users.find()命令就可以查看我们刚刚创建的用户了

  

 MongoDB开启权限认证的方法步骤详解

  

最后将杀掉mongodb进程,以授权方式启动

  

 MongoDB开启权限认证的方法步骤详解

  

<强>,二,授权方式启动

  

, 1,添加- auth参数授权启动

  

 MongoDB开启权限认证的方法步骤详解

  

2,登录并切换到管理数据库

  

 MongoDB开启权限认证的方法步骤详解

  

3,再查看数据库,会发现没有权限

  

 MongoDB开启权限认证的方法步骤详解

  

这时就是使用db.auth (‘hehaitao’,‘hehaitao)启用auth认证

  

 MongoDB开启权限认证的方法步骤详解”>,</p>
  <p>会看到返回的值为1,这就表示启动成功了,然后我们再使用命令查看数据库</p>
  <p> <img src=

  

发现就可以使用查看了

  

  

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。
  

MongoDB开启权限认证的方法步骤详解