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

 更新时间:2018年02月25日 09:33:20   作者:骑白马的菜鸟  
MongoDB已经使用很长一段时间了,基于MongoDB的数据存储也一直没有使用到权限访问(MongoDB默认设置为无权限访问限制),最近深入学习了下,所以下面这篇文章主要给大家介绍了关于MongoDB开启权限认证的相关资料,需要的朋友可以参考下。

前言

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

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

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

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

下面来介绍下开启权限认证的步骤。

一、非授权方式创建用户

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

2、进入到mongodb的安装bin目录下

3、客户端登录

4、切换到admin数据库

5、为admin数据库创建用户了

6、查看用户

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

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

 二、授权方式启动

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

2、登录并切换到admin数据库

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

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

 

会看到返回的值为1,这就表示启动成功了,然后我们再使用命令查看数据库

发现就可以使用查看了

总结

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

相关文章

  • MongoDB进阶之动态字段设计详解

    MongoDB进阶之动态字段设计详解

    这篇文章主要给大家介绍了MongoDB进阶之动态字段设计的相关资料,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面跟着小编一起来学习学习吧。
    2017-06-06
  • Mac下安装配置mongodb并创建用户的方法

    Mac下安装配置mongodb并创建用户的方法

    最近在在学习nodejs,相比mysql,mongodb与nodejs搭配更合适,存储数据格式也比较接近JS对象。下面这篇文章主要给大家介绍了关于在Mac下安装配置mongodb并创建用户的相关资料,需要的朋友可以参考下
    2018-05-05
  • 在PyCharm中安装Mongo Plugin的详细教程

    在PyCharm中安装Mongo Plugin的详细教程

    这篇文章主要介绍了在PyCharm中安装Mongo Plugin的详细教程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • mongodb eval 执行服务器端脚本

    mongodb eval 执行服务器端脚本

    在MongoDB的服务器端可以通过db.eval函数来执行javascript脚本,如我们可以定义一个javascript函数,然后通过db.eval在服务器端来运行!我们前面其实也接触过在服务器段运行一个预定义的javascript脚本的情况,如在$where查询,执行mapreduce任务等。
    2015-05-05
  • MongoDB使用自带的命令行工具进行备份和恢复的教程

    MongoDB使用自带的命令行工具进行备份和恢复的教程

    这篇文章主要介绍了MongoDB使用自带的命令行工具进行备份和恢复的教程,我们只需要在命令行界面中用简单的命令操作mongorestore和mongodump工具就可以实现,需要的朋友可以参考下
    2016-06-06
  • CentOS 7下用yum快速安装MongoDB的方法教程

    CentOS 7下用yum快速安装MongoDB的方法教程

    MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。本文介绍了CentOS 7系统下用yum快速安装MongoDB的方法教程,文中通过一步步的步骤介绍的很详细,有需要的朋友们可以参考借鉴。
    2016-12-12
  • MongoDB数据库部署环境准备及使用介绍

    MongoDB数据库部署环境准备及使用介绍

    这篇文章主要为大家介绍了MongoDB数据库部署环境准备以及基本的使用介绍,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-03-03
  • MongoDB 常用的数据类型和基本操作

    MongoDB 常用的数据类型和基本操作

    这篇文章主要介绍了MongoDB 常用的数据类型和基本操作,帮助大家更好的理解和学习使用MongoDB数据库,感兴趣的朋友可以了解下
    2021-03-03
  • 详解MongoDB数据库基础操作及实例

    详解MongoDB数据库基础操作及实例

    这篇文章主要介绍了详解MongoDB数据库基础操作及实例的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
    2017-09-09
  • java操作mongoDB查询的实例详解

    java操作mongoDB查询的实例详解

    这篇文章主要介绍了java操作mongo查询的实例详解的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
    2017-09-09

最新评论