mongoDB的权限管理
最近做一个关于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的权限管理的更多相关文章
- Mongodb增加权限管理
前言: 随着列式存储理念的成熟,越来越多的开发者开始接纳mongodb,hbase这类大储存的分布式列式数据库.特别是mongodb的这种快速搭建,快速使用特点,使其得到更多人的青睐.本人主要通过官 ...
- MongoDB用户权限管理配置
MongoDB系列第一课:MongDB简介 MongoDB系列第二课:MongDB环境搭建 MongoDB系列第三课:MongDB用户管理 MongoDB系列第四课:MongoDB数据库.集合.文档的 ...
- mongodb用户权限管理的CRUD
https://blog.csdn.net/weixin_34332905/article/details/88759759?utm_medium=distribute.pc_relevant.non ...
- MongoDB用户权限管理
创建用户账号: (roles参数指定了用户的角色以及这个账号授权的数据库,在同一个数据库中不能同时创建两个用户名相同的账号) Mongodb内置的用户角色: 数据库用户角色:read.readWrit ...
- [MongoDB] 用户权限管理
在新环境按照原来的步骤新装了MongoDB,结果出现了一些错误,才发现版本升到了2.6.1,用户权限相关的内容全部改掉了. 现在使用Role来管理用户,有一些内置的Role,也可以自定义Role. 内 ...
- mongodb用户权限管理(二)
数据库 分配用户权限 有了创建语法,和参数说明,接下来开始实践. 注意,还有一点,账号是跟着数据库绑定的,在那个库里授权,就在那个库里验证(auth) 否则会失败 创建 账号管理授权权限 的账号 &g ...
- MongoDB学习笔记—权限管理
1.MongoDB权限介绍 a 上篇文章中,我们在Linux下配置了MongoDB环境并且将其设置为服务随机器启动而启动,那么接下来这篇文章我们就来简单说一下MongoDB下对登录用户权限的管理. b ...
- mongodb权限管理
说到mongodb就得先谈谈mongodb的用户组,和传统的关系型数据库不一样,mongodb并没有在创建应用时就要求创建权限管理组,所以类似于Robomongo这样的数据库可视化工具在创建conne ...
- MongoDB权限管理之用户名和密码的操作
MongoDB默认是不需要输入用户名和密码,客户就可以登录的.但是出于安全性的考虑,我们还是要为其设置用户名和密码.本文主要介绍的是MongoDB权限管理之用户名和密码的操作,希望能对您有所帮助. 本 ...
随机推荐
- restify构建REST服务(转)
restify构建REST服务 从零开始nodejs系列文章,将介绍如何利Javascript做为服务端脚本,通过Nodejs框架web开发.Nodejs框架是基于V8的引擎,是目前速度最快的Java ...
- CUDA Samples: Dot Product
以下CUDA sample是分别用C++和CUDA实现的两个非常大的向量实现点积操作,并对其中使用到的CUDA函数进行了解说,各个文件内容如下: common.hpp: #ifndef FBC_CUD ...
- $.ajax 的速度要快于 angular 里 $http (个别情况)
$.ajax: $http:
- Linux运维-Rsync+Inotify
Rsync+Inotify Rsync:linux系统下的数据镜像备份工具.使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH.rsync主机同步. 特性: 可 ...
- css3实现对radio和checkbox的美化
一,如何隐藏小程序中的很粗的滚动条,实现页面的美化? tit: 在开发小程序的过程中,无论是横向或者纵向当产生滚动条时,系统默认的滚动条会很粗,效果展示十分难看,我们可以通过设置如下wxss代码实 ...
- 【剑指offer】数组中出现次数超过数组长度一半的数字,C++实现
原创博文,转载请注明出处! # 题目 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字.例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}.由于数字2在数组中出现了5次,超过 ...
- [转载][QT][SQL]sql学习记录2_sqlite数据类型
转载自:sqlite学习网站: http://www.runoob.com/sqlite/sqlite-tutorial.html SQLite 语法 SQLite 是遵循一套独特的称为语法的规则和 ...
- Centos kvm+ceph
Centos kvm+ceph 一. centos6.5 安装kvm 1. disable selinux 2. 确认支持intel虚拟化 3. 安装需要的包 4.设置桥接网络 5.运行kvm ins ...
- HihoCoder 1075 开锁魔法III(概率DP+组合)
描述 一日,崔克茜来到小马镇表演魔法. 其中有一个节目是开锁咒:舞台上有 n 个盒子,每个盒子中有一把钥匙,对于每个盒子而言有且仅有一把钥匙能打开它.初始时,崔克茜将会随机地选择 k 个盒子用魔法将它 ...
- WebStorm的下载与安装
百度搜索: 链接:http://www.jetbrains.com/webstorm/ 链接:http://www.jetbrains.com/student/ 学生免费授权计划 请从正规来源下载软件 ...