• windows下mongodb权限设置解决方法


    mongodb简介:

    MongoDB 是一个跨平台的,面向文档的数据库,提供高性能,高可用性和可扩展性方便。 MongoDB工作在收集和文件的概念。

    MongoDB默认设置为无权限访问限制,所以可以直接进入数据库并对数据进行操作,

    事件背景:最近,公司放在移动机房的两台装有mongoDB数据库的服务器被绿盟扫描出来有漏洞,要求我们解决

    根据绿盟提供的解决方法是在admin库中添加任意用户,并启用认证。 但绿盟给出的方法是基于linux下的方法,但其实原理大同小异。

    我更加网上搜来的文章,进行整合适用我们项目的实际情况,在此作记录,以便备忘。

    step1:切换至mongoDB安装路径的bin目录下后,执行 mongo登录。

    setp2:使用show dbs 可以直接查看系统中已存在的数据库。

    step3:进入admin库中

    step4:创建用户命令如下:

    db.createUser( 
      
        user"admin"
        pwd: "admin123"
        roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] 
      )

     step5:进入系统注册表(WIN+R-->regedit),找到[HKEY_LOCAL_MACHINE-->SYSTEM-->CurrentControlSet-->Services-->MongoDB]在右边的健-值列表中打到 “ImagePath”  在该值中 添加 --auth  

    step6:重启MongoDB服务:

    step7:重新进入进入查看已存在数据库发现没有权限

     

    step8:进行认证,直接认证提示失败(由于mongodb的用户是基于库的,所以必须先指定数据库才可以进行认证)

    stpe9:进入admin库,并进行认证,返回1表示认证成功,并可以查看数据库;

    但是这里也同样导致了一个问题,“mongodb对集成的系统不可用了”

    因为集成的系统是直接对mongdb进行使用的,没有进行认证,启用认证后,集成系统不能再使用mongodb。

  • 相关阅读:
    javascript常用对象
    oracle储存过程,job,视图,触发器(记性不好,写个例子自己记)
    xml直接读取节点
    脑瓜子的文章导航 脑瓜子的学院系列文章汇总
    ASP.NET MVC 中实现View与Controller分离
    开发
    SQLite学习手册(转)
    缓存数据库redis、memcached。 MongoDB 资源集锦
    在GOOGLE浏览器中模拟移动浏览器 调试Web app
    Intelligencia.UrlRewriter在IIS 7.0下的完全配置攻略
  • 原文地址:https://www.cnblogs.com/daisin/p/5980304.html
Copyright © 2020-2023  润新知