macos下mongoDB 3.4.5 添加用户、设置权限
macos下mongoDB 3.4.5 添加用户、设置权限
在项目中需要根据项目运行环境访问,以不同的身份访问各自的db,所以研究了一下MongoDB的
需求:
给MongoDB添加两个用户分别用于开发环境和测试环境,两个用户分别访问不同的db并拥有db的最高权限。
解决步骤:
- 关闭权限验证、启动MongoDB
- 创建MongoDB超级管理员,给予最高权限
- 分别创建两个用户,给予各自db的最高权限
- 开启权限验证、启动MongoDB
- 测试
具体步骤:
关闭权限验证、启动MongoDB
MongoDB默认是不开启权限验证的,所以直接使用命令启动(需要在bin目录下):mongod --dbpath /usr/local/mongodb/data/ --logpath /usr/local/mongodb/logs/mongod.log -logappend --fork
- 添加并认证管理员
- 先在另一个命令窗口进入客户端(Linux可以让服务端在后台运行):`./mongo’
然后在admin添加管理员(role:root表示最高权限):
use admin db.createUser({
user:"admin",
pwd:"admin",
roles:[{
role:"root",
db:"admin"
}]
}) db.auth("admin", "admin")use admin db.createUser({
user:"test_user",
pwd:"123456",
roles:[{
role:"dbAdmin",
db:"test_db"
},{
role:"readWrite",
db:"test_db"
}]
}) db.auth("test_user", "123456")开启权限验证、启动MongoDB(先关闭第1步启动的服务端)
mongod --auth --dbpath /usr/local/mongodb/data/ --logpath /usr/local/mongodb/logs/mongod.log -logappend --fork
4.测试
mongo 127.0.0.1:27017/admin -u test_user -p
123456
macos下mongoDB 3.4.5 添加用户、设置权限的更多相关文章
- OA之为用户设置角色和为用户设置权限
1.为用户设置角色 { Layout = null; } @using OA.Model <!DOCTYPE html> <html> <head> <met ...
- kali下添加用户和权限分配
1.添加用户 useradd -m test #-m的意思是创建用户的主目录 2.为用户test设置密码. passwd test 3.为添加的用户赋予权限(-a 添加 :-G 群组) 如果没有这一步 ...
- MongoDB3.x中添加用户和权限控制
现在需要创建一个帐号,该账号需要有grant权限,即:账号管理的授权权限.注意一点,帐号是跟着库走的,所以在指定库里授权,必须也在指定库里验证(auth) ? 1 2 3 4 5 6 7 8 9 10 ...
- MongoDB 分片集群的用户和权限一般操作步骤
步骤总结: 按照mongos路由.配置副本集服务,分片副本集服务的先后顺序关闭所有节点服务 创建副本集认证的key文件,复制到每个服务所在目录 修改每个服务的配置文件,增加参数 启动每个服务 创建账号 ...
- linux 添加用户、权限
# useradd –d /usr/sam -m sam 此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录). 假 ...
- Windows安装MongoDB 4.0并赋予用户访问权限
第一部分 Windows安装MongoDB-4.0 第一步:下载MongoDB:https://www.mongodb.com/download-center?jmp=nav#community 我目 ...
- zabbix 添加用户 配置权限
点击 Administration → Users 添加新用户,单击 Create user ,在新的用户表单中,确保将用户添加到现有用户组之一,例如“Zabbix administators”. ...
- linux ftp 添加用户及权限管理
Linux下创建用户是很easy的事情了,只不过不经常去做这些操作,时间久了就容易忘记,顺便配置一下FTP.声明:使用Linux版本release 5.6,并以超级管理员root身份运行. 1.创建用 ...
- linux添加用户、权限
# useradd –d /usr/sam -m sam 此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录). 假 ...
随机推荐
- C# List分页
假设你每页10条数据当前是第3页 跳到第4页则:List.Skip((4-1)*10).Take(10) 本文来自SunShine,转载请标明出处: http://do.jhost.cn/sunshi ...
- Difference between plt.draw() and plt.show() in matplotlib
Difference between plt.draw() and plt.show() in matplotlib down voteaccepted plt.show() will display ...
- Linux内核驱动--硬件访问I/O【原创】
寄存器与内存 寄存器与内存的区别在哪里呢? 寄存器和RAM的主要不同在于寄存器操作有副作用(side effect或边际效果): 读取某个地址时可能导致该地址内容发生变化,比如很多设备的中断状态寄存器 ...
- 蓝牙HID协议笔记【转】
蓝牙HID协议笔记 转自:http://blog.sina.com.cn/s/blog_69b5d2a50101emll.html 1.概述 The Human Interface Devic ...
- dubbo系列二、dubbo+zookeeper+dubboadmin分布式服务框架搭建(windows平台)
一.zookeeper配置中心安装 1.下载安装包,zookeeper-3.4.6.tar.gz 2.解压安装包,修改配置文件 参考zookeeper-3.4.6/conf/zoo_sample.cf ...
- python实现简单登陆流程
登陆流程图: 代码实现: #-*- coding=utf-8 -*- import os,sys,getpass ''' user.txt 格式 账号 密码 是否锁定 错误次数 jack 123 un ...
- mysql报错问题解决MySQL server PID file could not be found!
MySQL server PID file could not be found! 无法启动mysql服务 # service mysqld start MySQL server PID file c ...
- TCP端口转发(centos7)
=============================================== 2019/2/14_第1次修改 ccb_warlock == ...
- Nodejs实现WebSocket通信demo
一.创建websocket.js文件 步骤: 1.创建websocket.js文件,复制如下代码: 2.安装nodejs-websocket依赖: 3.该文件夹下命令行执行 node websocke ...
- SQL定义变量