开启MongoDB客户端访问控制
参考官方文档:https://docs.mongodb.org/v2.6/tutorial/enable-authentication/
基于版本:MongoDB 2.6
概览
在MongoDB数据实例上开启了访问控制,约束了用户必须在连接MongoDB的时候认证一下。在这个步骤中,你开启访问控制,然后创建的第一个用户必须是一个administrator的用户。这个administrator用户用来创建其他的用户。
注意事项
如果你在开启访问控制之前,创建了一个administrator用户,那么就关闭了localhost exception,在这种情况下,你必须使用'Enable Authentication after Creating the User Administrator'的步骤来开启访问控制。
这里主要是说明'Enable Authentication after Creating the User Administrator的方式开启访问控制(即先创建第一个用户然后开启认证):
步骤:
1.使用无认证的方式启动MongoDB
比如:mongod --port 27017 --dbpath c:\data\db1
2.创建administrator用户
这个用户有且仅有userAdminAnyDatabase这个角色的权限。
比如:创建一个用户名为siteUserAdmin的用户在admin数据库中,(必须是在admin数据库中创建)。
use admin
db.createUser(
{
user: "siteUserAdmin",
pwd: "password",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
对于角色、权限以及创建用户的命令,请参考:创建一个administrator用户,角色以及db.createUser()。
3.以认证的方式启动MongoDB数据库
mongod --auth --port 27017 --dbpath /data/db1
4.创建其他的用户
文档参考:https://docs.mongodb.org/v2.6/tutorial/add-user-to-database/
1.用有合适权限的用户连接MongoDB实例
比如:使用刚才创建的administrator用户siteUserAdmin,
mongo --port 27017 -u siteUserAdmin -p password --authenticationDatabase admin
2.创建一个新用户
创建用户语法可以参考:db.createUser()。
下面的例子是在reporting数据库中创建一个用户。
use reporting
db.createUser(
{
user: "reportsUser",
pwd: "12345678",
roles: [
{ role: "read", db: "reporting" },
{ role: "readWrite", db: "reporting" }
]
}
)
其中,use reporting命令,如果没有reporting数据库,则创建这个reporting数据库。
如果要认证这个reportUser用户,就必须在reporting数据库中认证。
开启MongoDB客户端访问控制的更多相关文章
- linux下MongoDB客户端shell基本操作
MongoDB 是一款NoSql数据库,没有固定的模式,即同一个集合中的不同文档结构可以不同,如:第一条记录{name:”xiaoming”},第二条记录:{name:”xiaoli”,age:15} ...
- [翻译]Telnet简单介绍及在windows 7中开启Telnet客户端
文章翻译自 http://social.technet.microsoft.com/wiki/contents/articles/910.windows-7-enabling-telnet-clien ...
- CentOS6.3安装MongoDB2.2 及 安装PHP的MongoDB客户端
下载源码:(放到 /usr/local/src 目录下) 到官网 http://www.mongodb.org/downloads 下载源码 https://fastdl.mongodb.org/li ...
- MongoDB 客户端 MongoVue
直接上图片,图片是按顺序来的 软件下载地址(Windows下的MongoDB客户端MongoVUE 这是最后一个全功能的不收费的版本): http://pan.baidu.com/s/1skYIEq5
- yum安装配置mongoDB客户端和服务器端
1,Centos6.X yum安装mongoDB客户端和服务器端; yum -y install mongodb mongodb-server; 基于epel repo.当前的mongoDB的版本为2 ...
- 在apache2.4版本之前做客户端访问控制,是用Allow Deny Order指令做访问控制的,
在apache2.4版本之前做客户端访问控制,是用Allow Deny Order指令做访问控制的,而在2.4的版本上是用的用法跟之前的版本大不相同,如下 ###################### ...
- 最佳的MongoDB客户端管理工具
<最佳的MongoDB客户端管理工具> 作者:chszs,未经博主允许不得转载.经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs 一个好的MongoD ...
- mongodb客户端操作常用命令(续)
之前有写过一篇mongodb客户端的操作常用命令 ,今天接着来记录分享一些关于mongodb账户权限设置的命令操作 上期mongodb客户端的操作常用命令地址:https://www.cnblogs. ...
- MongoDB 带访问控制的副本集部署
当你需要用到一个MongoDB 副本集集群,用于开发测试时, 可以通过下面的步骤简单完成. 版本及环境 MongoDB4.4 Centos6.5 一. 下载安装 MongoDB Server 及 ...
随机推荐
- HTMLElement
参考文档:MDN HTMLElement 一.继承关系 所有HTML元素都是由HTMLElement或者其更具体的子类型来表示的. HTMLElement继承自Element,并实现了GlobalEv ...
- NGUI 解决UILable 在空行起始位置加‘\n’
NGUI 解决UILable 默认在顶满第一行时,在起始位置如键入空格无效,其原因就是会加入换行符,使字符串,整体换行了 解决办法加入bool变量控制 1在 UILable代码中添加 [HideInI ...
- h5 做app时和原生交互的小常识。
距离上次随笔或许有半年了吧,最近在用hybrid模式开发移动app,所以就简单的说说用h5技术开发app时候,做原生交互的几个小常识: 一.拨打电话或者发送短信: <a href="t ...
- android开发用无线网络进行Android开发中的调试
1.手机具有root权限 2.安装adbWireless1.5.4.apk (下面有下载地址) 3.敲入命令:adb connect 192.168.1.127 后面是手机的IP地址 打开eclip ...
- JS实现轻量级计算器
想尝试做一个网页版计算器后,参考了很多博客大神的代码,综合归纳.总结修改,整理如下文. 附: Demo 源码 一.HTML+CSS 具体结构样式如下图,基本参照手机计算器界面.按钮功能可以查 ...
- input标签禁止输入,隐藏光标
<INPUT class="" value="" name= "" readonly onfocus="this.blur ...
- html的常用基础应用
HTML结构 如下一段最简单的HTML代码:<html> <head> <title>HTML页面</title> ...
- 关于css禁止文本复制属性
最近在做DHTMLX框架替换,新框架dhx的grid是不能选中内容复制的 虽然相对来说是安全些的,但是客户体验度一定会大打折扣 网页上禁止复制主要靠JavaScript来实现.<BODY onc ...
- 【转】JDBC学习笔记(7)——事务的隔离级别&批量处理
转自:http://www.cnblogs.com/ysw-go/ 数据库事务的隔离级别 对于同时运行的多个事务, 当这些事务访问数据库中相同的数据时, 如果没有采取必要的隔离机制, 就会导致各种并发 ...
- 【转载】stm32的GPIO八种工作模式
一.推挽输出:可以输出高.低电平,连接数字器件:推挽结构一般是指两个三极管分别受两个互补信号的控制,总是在一个三极管导通的时候另一个截止.高低电平由IC的电源决定. 推挽电路是两个参数 ...