最近做一个关于mongoDB权限的功能,

在网上找了好久,各种命令,各种配置,各种修改,都没有解决哥的困惑.无奈,睡一觉后,灵光乍现,灵感来了.

下面就是我的最新发现,当然在各位看官的眼里,我的这个也是一坨狗屎....不过没关系,反正是解决了我的问题

首先在我的之前博客里说到了在win7下搭建mongoDB里面以这样的一段,看截图:

首先记住这个地方.等会再来看看它.

安装好了mongoDB后默认是没有任何权限控制的,在cmd窗口中敲命令:

1.show dbs.默认有两个数据库:admin和local.才疏学浅,local没用过,不知道什么用.

2.use admin

3.show collections.你会看到system.users.这张集合专门用来存储超级管理员的.

4.db.addUser('gys','123456').添加一个超级管理员.用户名是gys,密码是123456

5.use admin.

6.show collections.我们还是可以正常的查看数据库中的各种表.这个时候就需要我们上面提到的那个截图了

7.首先我们把服务关闭掉.可以在"计算机"==>管理==>服务==>mongoDB.右击停止服务.

8.把截图中的命令做一下修改:mongod.exe --dbpath=d:\mongoDB\data -auth

9.mongo admin

10.use admin

11.show collections

这个时候提示没有权限了.

12.db.auth('gys','123456').显示1,表示成功验证了.0,表示验证失败.

13.show collections;看到了admin中的集合.

14.use testDB.假设存在这个数据库.

15.show collections.你会发现依然可以查看这个里面的数据,且需要权限验证.因为我们建立的是超级管理员.在有admin转向其他表的时候,是可以一路畅通无阻的.超管员的另一个功能还在于它可以给其他数据库添加权限用户.

比如现在我们就可以给这个数据库添加一个用户.

16.db.addUser('test','123456').

17.ctrl+c退出.直接登录指定数据库testDB,而不是默认的连接哪个数据库,或登录的admin数据库,然后转向其他数据库.

18.show collections.这个时候会提示没有权限.

19.db.auth("test",123456).显示1,登录成功

20.show collections.这样就可以查看testDB数据库中的集合了.

差不多了.就这么多了

mongoDB的权限管理的更多相关文章

  1. Mongodb增加权限管理

     前言: 随着列式存储理念的成熟,越来越多的开发者开始接纳mongodb,hbase这类大储存的分布式列式数据库.特别是mongodb的这种快速搭建,快速使用特点,使其得到更多人的青睐.本人主要通过官 ...

  2. MongoDB用户权限管理配置

    MongoDB系列第一课:MongDB简介 MongoDB系列第二课:MongDB环境搭建 MongoDB系列第三课:MongDB用户管理 MongoDB系列第四课:MongoDB数据库.集合.文档的 ...

  3. mongodb用户权限管理的CRUD

    https://blog.csdn.net/weixin_34332905/article/details/88759759?utm_medium=distribute.pc_relevant.non ...

  4. MongoDB用户权限管理

    创建用户账号: (roles参数指定了用户的角色以及这个账号授权的数据库,在同一个数据库中不能同时创建两个用户名相同的账号) Mongodb内置的用户角色: 数据库用户角色:read.readWrit ...

  5. [MongoDB] 用户权限管理

    在新环境按照原来的步骤新装了MongoDB,结果出现了一些错误,才发现版本升到了2.6.1,用户权限相关的内容全部改掉了. 现在使用Role来管理用户,有一些内置的Role,也可以自定义Role. 内 ...

  6. mongodb用户权限管理(二)

    数据库 分配用户权限 有了创建语法,和参数说明,接下来开始实践. 注意,还有一点,账号是跟着数据库绑定的,在那个库里授权,就在那个库里验证(auth) 否则会失败 创建 账号管理授权权限 的账号 &g ...

  7. MongoDB学习笔记—权限管理

    1.MongoDB权限介绍 a 上篇文章中,我们在Linux下配置了MongoDB环境并且将其设置为服务随机器启动而启动,那么接下来这篇文章我们就来简单说一下MongoDB下对登录用户权限的管理. b ...

  8. mongodb权限管理

    说到mongodb就得先谈谈mongodb的用户组,和传统的关系型数据库不一样,mongodb并没有在创建应用时就要求创建权限管理组,所以类似于Robomongo这样的数据库可视化工具在创建conne ...

  9. MongoDB权限管理之用户名和密码的操作

    MongoDB默认是不需要输入用户名和密码,客户就可以登录的.但是出于安全性的考虑,我们还是要为其设置用户名和密码.本文主要介绍的是MongoDB权限管理之用户名和密码的操作,希望能对您有所帮助. 本 ...

随机推荐

  1. restify构建REST服务(转)

    restify构建REST服务 从零开始nodejs系列文章,将介绍如何利Javascript做为服务端脚本,通过Nodejs框架web开发.Nodejs框架是基于V8的引擎,是目前速度最快的Java ...

  2. CUDA Samples: Dot Product

    以下CUDA sample是分别用C++和CUDA实现的两个非常大的向量实现点积操作,并对其中使用到的CUDA函数进行了解说,各个文件内容如下: common.hpp: #ifndef FBC_CUD ...

  3. $.ajax 的速度要快于 angular 里 $http (个别情况)

    $.ajax: $http:

  4. Linux运维-Rsync+Inotify

      Rsync+Inotify Rsync:linux系统下的数据镜像备份工具.使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH.rsync主机同步. 特性: 可 ...

  5. css3实现对radio和checkbox的美化

    一,如何隐藏小程序中的很粗的滚动条,实现页面的美化?   tit: 在开发小程序的过程中,无论是横向或者纵向当产生滚动条时,系统默认的滚动条会很粗,效果展示十分难看,我们可以通过设置如下wxss代码实 ...

  6. 【剑指offer】数组中出现次数超过数组长度一半的数字,C++实现

    原创博文,转载请注明出处! # 题目 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字.例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}.由于数字2在数组中出现了5次,超过 ...

  7. [转载][QT][SQL]sql学习记录2_sqlite数据类型

    转载自:sqlite学习网站:  http://www.runoob.com/sqlite/sqlite-tutorial.html SQLite 语法 SQLite 是遵循一套独特的称为语法的规则和 ...

  8. Centos kvm+ceph

    Centos kvm+ceph 一. centos6.5 安装kvm 1. disable selinux 2. 确认支持intel虚拟化 3. 安装需要的包 4.设置桥接网络 5.运行kvm ins ...

  9. HihoCoder 1075 开锁魔法III(概率DP+组合)

    描述 一日,崔克茜来到小马镇表演魔法. 其中有一个节目是开锁咒:舞台上有 n 个盒子,每个盒子中有一把钥匙,对于每个盒子而言有且仅有一把钥匙能打开它.初始时,崔克茜将会随机地选择 k 个盒子用魔法将它 ...

  10. WebStorm的下载与安装

    百度搜索: 链接:http://www.jetbrains.com/webstorm/ 链接:http://www.jetbrains.com/student/ 学生免费授权计划 请从正规来源下载软件 ...