macos下mongoDB 3.4.5 添加用户、设置权限

 

在项目中需要根据项目运行环境访问,以不同的身份访问各自的db,所以研究了一下MongoDB的

需求:

给MongoDB添加两个用户分别用于开发环境和测试环境,两个用户分别访问不同的db并拥有db的最高权限。

解决步骤:

  1. 关闭权限验证、启动MongoDB
  2. 创建MongoDB超级管理员,给予最高权限
  3. 分别创建两个用户,给予各自db的最高权限
  4. 开启权限验证、启动MongoDB
  5. 测试

具体步骤:

  1. 关闭权限验证、启动MongoDB 
    MongoDB默认是不开启权限验证的,所以直接使用命令启动(需要在bin目录下):

    mongod  --dbpath /usr/local/mongodb/data/ --logpath /usr/local/mongodb/logs/mongod.log -logappend --fork
  2. 添加并认证管理员
  3. 先在另一个命令窗口进入客户端(Linux可以让服务端在后台运行):`./mongo’
  1. 然后在admin添加管理员(role:root表示最高权限):

    use admin
    
    db.createUser({
    user:"admin",
    pwd:"admin",
    roles:[{
    role:"root",
    db:"admin"
    }]
    }) db.auth("admin", "admin")
  2. 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")
  3. 开启权限验证、启动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 添加用户、设置权限的更多相关文章

  1. OA之为用户设置角色和为用户设置权限

    1.为用户设置角色 { Layout = null; } @using OA.Model <!DOCTYPE html> <html> <head> <met ...

  2. kali下添加用户和权限分配

    1.添加用户 useradd -m test #-m的意思是创建用户的主目录 2.为用户test设置密码. passwd test 3.为添加的用户赋予权限(-a 添加 :-G 群组) 如果没有这一步 ...

  3. MongoDB3.x中添加用户和权限控制

    现在需要创建一个帐号,该账号需要有grant权限,即:账号管理的授权权限.注意一点,帐号是跟着库走的,所以在指定库里授权,必须也在指定库里验证(auth) ? 1 2 3 4 5 6 7 8 9 10 ...

  4. MongoDB 分片集群的用户和权限一般操作步骤

    步骤总结: 按照mongos路由.配置副本集服务,分片副本集服务的先后顺序关闭所有节点服务 创建副本集认证的key文件,复制到每个服务所在目录 修改每个服务的配置文件,增加参数 启动每个服务 创建账号 ...

  5. linux 添加用户、权限

    # useradd –d /usr/sam -m sam 此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录). 假 ...

  6. Windows安装MongoDB 4.0并赋予用户访问权限

    第一部分 Windows安装MongoDB-4.0 第一步:下载MongoDB:https://www.mongodb.com/download-center?jmp=nav#community 我目 ...

  7. zabbix 添加用户 配置权限

    点击 Administration → Users 添加新用户,单击 Create user  ,在新的用户表单中,确保将用户添加到现有用户组之一,例如“Zabbix administators”. ...

  8. linux ftp 添加用户及权限管理

    Linux下创建用户是很easy的事情了,只不过不经常去做这些操作,时间久了就容易忘记,顺便配置一下FTP.声明:使用Linux版本release 5.6,并以超级管理员root身份运行. 1.创建用 ...

  9. linux添加用户、权限

    # useradd –d /usr/sam -m sam 此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录). 假 ...

随机推荐

  1. C# List分页

    假设你每页10条数据当前是第3页 跳到第4页则:List.Skip((4-1)*10).Take(10) 本文来自SunShine,转载请标明出处: http://do.jhost.cn/sunshi ...

  2. Difference between plt.draw() and plt.show() in matplotlib

    Difference between plt.draw() and plt.show() in matplotlib down voteaccepted plt.show() will display ...

  3. Linux内核驱动--硬件访问I/O【原创】

    寄存器与内存 寄存器与内存的区别在哪里呢? 寄存器和RAM的主要不同在于寄存器操作有副作用(side effect或边际效果): 读取某个地址时可能导致该地址内容发生变化,比如很多设备的中断状态寄存器 ...

  4. 蓝牙HID协议笔记【转】

    蓝牙HID协议笔记 转自:http://blog.sina.com.cn/s/blog_69b5d2a50101emll.html 1.概述     The Human Interface Devic ...

  5. dubbo系列二、dubbo+zookeeper+dubboadmin分布式服务框架搭建(windows平台)

    一.zookeeper配置中心安装 1.下载安装包,zookeeper-3.4.6.tar.gz 2.解压安装包,修改配置文件 参考zookeeper-3.4.6/conf/zoo_sample.cf ...

  6. python实现简单登陆流程

    登陆流程图: 代码实现: #-*- coding=utf-8 -*- import os,sys,getpass ''' user.txt 格式 账号 密码 是否锁定 错误次数 jack 123 un ...

  7. 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 ...

  8. TCP端口转发(centos7)

    =============================================== 2019/2/14_第1次修改                       ccb_warlock == ...

  9. Nodejs实现WebSocket通信demo

    一.创建websocket.js文件 步骤: 1.创建websocket.js文件,复制如下代码: 2.安装nodejs-websocket依赖: 3.该文件夹下命令行执行 node websocke ...

  10. SQL定义变量