码迷,mamicode.com
首页 > 数据库 > 详细

MongDB开启权限认证

时间:2017-09-26 20:59:27      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:数据库   tao   auth   开启   上进   查看   linux系统   tar   sha   

  在生产环境中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 权限认证

MongDB开启权限认证

标签:数据库   tao   auth   开启   上进   查看   linux系统   tar   sha   

原文地址:http://www.cnblogs.com/zishengY/p/7400881.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!