MongoDB默认设置为无权限訪问限制
注:研究成果基于Windows平台

在部署mongodb成功后。进入控制台:
输入命令:mongod
 use admin,你会发现该DB下包括了一个system.user表,呵呵。没错,这个表就等同于MsSql中的用户表。用来存放超级管理员的,那我们就往它里面加入一个超级管理员试试看
里我加入一个超级管理员用户,username为admin,password也为admin,即然我们加入了超级管理员,那咱们就来測试下,看看咱们再次连接MongoDB需不须要提示输入用户名、密码。我们先退出来

输入命令:mongod  use admin

输入命令:show collections。查看该库下全部的表,你会发现,MongoDB并没有提示你输入username、password。那就奇怪了,这是怎么回事呢?在文章最開始提到了。



MongoDB默认设置为无权限訪问限制,即然这样,那我们就先把它设置成为须要权限訪问限制,咱们再看看效果,怎么设置呢?

在注冊表中,找到MongoDB的节点。在它的ImgPath中,我们改动一下,增加 -auth,例如以下所看到的:mongod

"D:\Program Files\mongodb\bin\mongod" -dbpath  e:\work\data\mongodb\db  -logpath  e:\work\data\mongodb\log -auth -service

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



改动完毕后再次进入控制台,发现须要password验证了。


输入username和password就能够验证了。

别急,还没有完。


当退出窗体后。再次启动进入窗体后,通过use mydatabase来切换还有一个库后,查看库以下的表,发现又没有权限了。
可是。通过之前命令先进入admin库,然后验证username和password后再进入mydatabase库就没有问题。

这样我们就能够进入mydatabase库后

在加入用户 db.addUser(username,password);

这样就能够通过username和password来进入mydatabase库了。



相同在linux的环境下,须要在启动的服务后面加入auth的參数来启动权限訪问控制。









MongoDB下配置用户权限的更多相关文章

  1. mongodb副本集用户权限设置

     mongodb副本集用户权限设置  用户权限参考文章 一:先看看MongoDB中用户的角色说明 read :   数据库的只读权限,包括: aggregate,checkShardingIndex, ...

  2. mongodb 3.2 用户权限管理配置

    使用mongodb 有段时间了,由于是在内网使用,便没有设置权限,一直是裸奔. 最近有时间,研究了下mongodb 3.2 的用户权限配置,网上有许多用户权限配置的文章,不过大多是之前版本,有些出入, ...

  3. MongoDB 3.X 用户权限控制

    摘要: MongoDB 3.0 安全权限访问控制,在添加用户上面3.0版本和之前的版本有很大的区别,这里就说明下3.0的添加用户的方法. 环境.测试: 在安装MongoDB之后,先关闭auth认证,进 ...

  4. MongoDB初了解——用户权限

    本文所述MongoDB版本为4.0.5,笔者对MongoDB刚接触,对各个版本的MongoDB不甚了解,本文不对该版本的MongoDB做特性介绍,所涉及命令也许对其余版本不适用. 因为目前有一个试验性 ...

  5. 在Liunx上搭建FTP并配置用户权限

    伴随着.Net Core的开源,公司前几天上了新的Liunx服务器,我在前几篇文章中介绍了如何搭建环境以及部署.Net Core应用. 然后,今天客户和我说想自己给网站做推广,需要用FTP链接我们的服 ...

  6. 浅谈一下Windows下的用户权限

    大学毕业后,选择做了苹果开发,一直是使用的Mac系统,所以对Windows的基本操作忘得几乎一干二净:因为做内网穿透的需要,要用到Windows下的权限问题,所以重新研究了一下Windows设置用户权 ...

  7. Jenkins 配置用户权限错误导致无法登录解决方案

    最初配置Jenkins的用户管理权限时,因为不熟悉很容易将用户角色配置错误,导致配置用户后无法登录系统: 登录系统时候提示"Access Denied": 解决办法: 进入Jenk ...

  8. Linux培训教程 linux下修改用户权限的方法

    一般我们日常碰到要修改用户权限的,往往是要么修改一下用户的gorupid,通过上面命令可以改;要么是把普通用户改成具有超级权限的用户,这个一般自己不能直接改,只能是root或有root权限的用户才能帮 ...

  9. Linux下的用户权限

    用户权限: drwxr-xr-x root root - : boot #权限位 硬连接数 所属用户 所属组 大小 最后修改时间 文件/目录# r w x 4 2 1 用户权限位分为3段,分别对应US ...

随机推荐

  1. 概述「并查集补集转化」模型&&luoguP1330 封锁阳光大学

    奇妙的模型转化以及并查集思想 模型概述 有图$G=(V,E)$,初始所有点为白色,现在要将其中一些点染为黑色,要求染色后满足:$∀(u,v)∈E$,$∃col_u!=col_v$.求最小染色点数. 题 ...

  2. [php] 高级教程

    include 和 require 语句用于在执行流中插入写在其他文件中的有用的代码. include 和 require 除了处理错误的方式不同之外,在其他方面都是相同的: require 生成一个 ...

  3. Python9-字典-day5

    数据类型划分:可变数据类型,不可变数据类型不可变数据类型:元祖 bool int str 可哈希可变数据类型:list,dic set 不可哈希dict key 必须是不可变数据类型,可哈希 valu ...

  4. 使用VS2015编写驱动时出现的部分错误以及解决方法

    前几日在github上下载了一个Windows驱动的demo,原本想着直接下载下来打开解决方案就可以用,没想到一编译,出现了奇奇怪怪的Error,部分Error网上也没什么好的解决办法,对我这个从未深 ...

  5. prometheus + mysqld_exporter + grafana 实现对mysql db的监控

    https://blog.csdn.net/hfut_wowo/article/details/78536022 1.参考这篇博文2.博主的用的是windows版本 prometheus-2.5.0- ...

  6. 关于加号传递到后端会变为空格的c#例子

    参考博客:http://blog.csdn.net/nsdnresponsibility/article/details/50965262 以前在一次传递参数的情况中遇到,特此记录一下. 之前传递的参 ...

  7. apache下虚拟域名配置

    在我们开发中通过虚拟域名来访问一个指定的项目确实很方便,接下来教大家如何通过手动的方式去配置虚拟域名(已apache服务器为例) 一.首页我们得找到host文件.windows下这个文件在c盘中WIN ...

  8. 路由重分发 最重要 最难 ccnp

    路由重分发   多种协议之间    彼此学习到对方的路由 重分发好   结果好 重分发不好   结果最好是产生次优路径      最差事产生路由黑洞和环路 实例1:    重分发一般需要双向重分发   ...

  9. 【Luogu】P3376网络最大流模板(Dinic)

    最大流模板成为另一个被攻克的模板题. 今天QDC给我讲了一下Dinic,感觉很好懂.于是为了巩固就把这道题A掉了. 核心思想就是不断BFS分层,然后不断DFS找增广路.找不到之后就可以把答案累加输出了 ...

  10. JSONObject与JSONArray的使用(jackson)

    1.创建一个JSONObject对象 package com.resource.controller.web; import java.util.ArrayList; import java.util ...