MongoDB系列教程(四):设置用户访问权限

我们知道mysql在安装的时候需要我们设置一个数据库默认的用户名和密码,mongodb也不例外,不过mongodb是默认的没有设置访问限制的,不需要输入用户名和密码都可以访问的,但是这样会十分的不安全,我们需要手动的为mongodb加上权限限制命令。
 
首先建立一个默认的账户
 

代码如下:

Use admin
    Db.addUser('sa','sa')

这样我们建立了一个用户名为sa,密码为sa的默认账户。
 
    在此时我们还是可以不输入用户名和密码进入数据库的,接下来我们做如下的修改。
 
    打开mongodb所在的注册表:
    Win+R 运行regedit,找到
 

代码如下:

[HKEY_LOCAL_MACHINE-->SYSTEM-->CurrentControlSet-->Services-->MongoDB]

在右边的健-值列表中打到“ImagePath”,添加上  -auth,如下图所示:

注:修改完注册表之后,一定要手动重启mongodb服务,这样才会生效。
    这样当我们再次的打开mongodb的shell窗口,查看默认的数据库和“表”,会提示无法打开对应的collections,并且会报错,如下图所示。

当我们使用之前添加的用户登录就会显示出来,1默认的是用户名和密码正确。

在进入之后,我们可以再建立自己的用户。就像mysql中的用户管理中,在mysql的user表中我们可以添加和删除用户,在mongodb中也是一样的。例如我们添加一个admin:
 

代码如下:

Db.addUser('admin','admin')

注:以上是在windows环境下操作的,在linux中是一致的。
下一篇关于mongodb数据库基本语法学习

(0)

相关推荐

  • mongodb权限设置之添加管理员、普通用户的方法

    我知道的关系型数据库都是有权限控制的,什么用户能访问什么库,什么表,什么用户可以插入,更新,而有的用户只有读取权限. 例如:mysql安装配置好后,有一个自带的mysql数据库,里面有一张user表,用来存放用户,以及用户权限,而mongodb这个最像关系型的数据库,有没有这样的表呢. 一.掌握权限,理解下面4条基本上就差不多 1.mongodb是没有默认管理员账号,所以要先添加管理员账号,在开启权限认证.2.切换到admin数据库,添加的账号才是管理员账号.3.用户只能在用户所在数据库登录,包

  • Mongodb 3.2.9开启用户权限认证问题的步骤详解

    前言 大家在Mongodb安装好后,一般不需要用户名密码就可以直接使用,开发者认为只要使用环境足够安全,可以不使用认证,但是在实际使用中为了数据的安全,大多人还是选择了开启权限认证. 一.在老版的Mongodb(大概3.0以前)可以这样开启认证: 1.Linux环境下mongo shell方式认证: >show dbs ##看到有如下数据 admin (empty) comment 0.203125GB dbtest (empty) foo 0.203125GB local (empty) te

  • MongoDB为用户设置访问权限

    MongoDB已经使用很长一段时间了,基于MongoDB的数据存储也一直没有使用到权限访问(MongoDB默认设置为无权限访问限制),今天特地花了一点时间研究了一下,研究成果如下: 注:研究成果基于Windows平台 MongoDB在本机安装部署好后 1. 输入命令:show dbs,你会发现它内置有两个数据库,一个名为admin,一个名为local.local好像没啥用,如果哪位在使用过程中发现了这个local表的用途,希望能够留言提醒,那我们就专心来说说admin表 2. 输入命令:use

  • Windows下MongoDB配置用户权限实例

    MongoDB默认设置为无权限访问限制注:研究成果基于Windows平台 在部署mongodb成功后,进入控制台: \ 输入命令:mongod use admin,你会发现该DB下包含了一个system.user表,呵呵,没错,这个表就等同于MsSql中的用户表,用来存放超级管理员的,那我们就往它里面添加一个超级管理员试试看里我添加一个超级管理员用户,username为admin,password也为admin,即然我们添加了超级管理员,那咱们就来测试下,看看咱们再次连接MongoDB需不需要提

  • 给MongoDB添加用户权限方法分享

    使用Mongodb数据库,需要为各个数据库增加用户权限,查了一下发现下面代码: 复制代码 代码如下: use test2 db.addUser( { user: "test",               pwd: "admin",               roles: [ "readWrite", "dbAdmin" ]             } ) 执行后发现: 复制代码 代码如下: $ mongo 192.168.

  • mongodb 添加用户及权限设置详解

    例如:mysql安装配置好后,有一个自带的mysql数据库,里面有一张user表,用来存放用户,以及用户权限,而mongodb这个最像关系型的数据库,有没有这样的表呢. 一,掌握权限,理解下面4条基本上就差不多 1,mongodb是没有默认管理员账号,所以要先添加管理员账号,在开启权限认证. 2,切换到admin数据库,添加的账号才是管理员账号. 3,用户只能在用户所在数据库登录,包括管理员账号. 4,管理员可以管理所有数据库,但是不能直接管理其他数据库,要先在admin数据库认证后才可以.这一

  • MongoDB系列教程(四):设置用户访问权限

    我们知道mysql在安装的时候需要我们设置一个数据库默认的用户名和密码,mongodb也不例外,不过mongodb是默认的没有设置访问限制的,不需要输入用户名和密码都可以访问的,但是这样会十分的不安全,我们需要手动的为mongodb加上权限限制命令.   首先建立一个默认的账户   复制代码 代码如下: Use admin     Db.addUser('sa','sa') 这样我们建立了一个用户名为sa,密码为sa的默认账户.       在此时我们还是可以不输入用户名和密码进入数据库的,接下

  • MongoDB系列教程(三):Windows中下载和安装MongoDB

    软件下载 下载mongodb最新的包:http://www.mongodb.org/downloads     下载mongodb可视化界面,mongoVUE:http://download.csdn.net/detail/lovesummerforever/8036417   软件安装 mongodb服务端安装步骤如下所示: 1.遵守mongodb规范,选择自己的磁盘创建文件夹,在这里我选择的是D盘,创建如下目录结构   复制代码 代码如下: D:\mongodb  作为安装的根目录    

  • php实现获取及设置用户访问页面语言类

    本文实例讲述了php实现获取及设置用户访问页面语言类,分享给大家供大家参考.具体分析如下: 该实例User Language Class 获取/设置用户访问的页面语言,如果用户没有设置访问语言,则读取Accept-Language.根据用户选择的语言显示对应的页面(英文,简体中文,繁体中文) UserLang.class.php类文件如下: <?php /** User Language Class 获取/设置用户访问的页面语言,如果用户没有设置访问语言,则读取Accept-Language *

  • 批处理设置文件访问权限的方法分享

    SetACL.exe 0.904 中文帮助: SetACL.exe我们下载地址示例: SetACL.exe c:\nihao /dir /deny everyone /read_ex 设置E:\wxDesktop 文件夹 everyone 用户为读取和运行权限 SetACL MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /registry /deny administrator /read 设置注册表键值Run 为完全控制权限 ---

  • MongoDB系列教程(五):mongo语法和mysql语法对比学习

    我们总是在对比中看到自己的优点和缺点,对于mongodb来说也是一样,对比学习让我们尽快的掌握关于mongodb的基础知识. mongodb与mysql命令对比 关系型数据库一般是由数据库(database).表(table).记录(record)三个层次概念组成.而非关系型数据库mongodb是由数据库(database).集合(collection).文档对象(document)三个层次组成.mongodb对于关系型数据库里的表,没有行和列的关系概念,这体现了模式的自由特点. 语法命令如下列

  • MongoDB系列教程(六):java操作mongodb实例

    java操作mysql数据库的代码我们已经了如指掌了,增删改查,java对mongodb数据库也是类似的操作,先是数据库连接,再是进行操作. 首先我们进入进入admin数据库,然后建立自己的数据库testMongoDb,进入admin数据库后,就可以直接进入testMongoDb,因为用户可以进入系统的数据库,就是超级管理员,use testMongoDb后,为该数据库设置用户名和密码,db.addUser('root','root'),这样我们在程序中连该数据库,并实现增删改查,代码如下所示.

  • 从零开始学习Node.js系列教程之设置HTTP头的方法示例

    本文实例讲述了Node.js设置HTTP头的方法.分享给大家供大家参考,具体如下: server.js //basic server的配置文件 var port = 3000; var server = require('./basicserver').createServer(); server.useFavIcon("localhost", "./docroot/favicon.png"); server.addContainer(".*",

  • MongoDB系列教程(一):NoSQL起源

    为什么出现NoSQL? 随着互联网的发展,当我们把一台服务器一台服务器变成两台服务器,当我们开始建立数据备份,当我们需要加一个缓冲层,来调整所有的查询,投入更多的硬件. 最后,需要将数据切分多个集群上,并重构大量的应用逻辑以适应这种切分.不久之后,你就会发现被自己数月前的设计数据结构限制住了. 随着web2.0的兴起,关系型数据库本身无法克服的缺陷越来越明显,主要表现为如下几点. 1.对数据高并发读写的需求 2.对海量数据的高效率存储和访问的需求. 3.对数据库的高可扩展性和高可用性的需求. 4

  • MongoDB系列教程(八):GridFS存储详解

    GridFS简介 mongoDB的文档以BSON格式存储,支持二进制的数据类型,当我们把二进制格式的数据直接保存到mongoDB的文档中.但是当文件太大时,例如图片和视频等文件,每个文档的长度是有限的,于是mongoDb会提供了一种处理大文件的规范--GridFS. GridFS实现原理 在GridFS数据库中,默认使用fs.chunks 和fs.files来存储文件,其中fs.files集合存放文件的信息,fs.chunks存放文件的数据,一个fs.files集合中的一条记录内容如下,即一个f

  • MongoDB系列教程(二):MongoDB简介

    MongoDB介绍           MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的.他支持的数据结构非常的松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型.MongoDB最大的特点是他支持的查询语言是非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引.它的特点是高性能.易部署.易使用,存储数据非常方便. MongoDB功能特性 1.面向集合存储

随机推荐