基础篇(能解决工作中80%的问题):

  1. MongoDB的概述、应用场景、下载方式、连接方式和发展历史等

  2. MongoDB数据类型、重要概念以及shell常用指令

  3. MongoDB文档的各种增加、更新、删除操作总结

  4. MongoDB各种查询操作总结

  5. MongoDB对列的各种操作总结

  6. MongoDB中的索引操作总结

进阶篇:

  1. MongoDB聚合操作总结

  2. MongoDB的导入导出、备份恢复总结

  3. MongoDB的用户管理总结

  4. MongoDB复制(副本集)总结

  5. MongoDB 分片总结

  6. MongoDB 遇见 spark(进行整合)

  7. MongoDB内部的存储原理

其它:

  1. python3操作MongoDB的各种案例

  2. MongoDB命令汇总

一. mongodb用户

1.1 用户管理接口

要添加用户,可使用MongoDB提供的db.createUser()方法。 添加用户时,可以为用户分配角色以授予权限。

注意:在数据库中创建的第一个用户应该是具有管理其他用户的权限的用户管理员。

还可以更新现有用户,例如更改密码并授予或撤销角色。

1.2 验证数据库

添加用户时,可以在特定数据库中创建用户。该数据库是用户的认证的数据库。

用户可以跨不同数据库拥有权限; 即用户的权限不限于认证数据库。 通过分配给其他数据库中的用户角色,在一个数据库中创建的用户可以拥有对其他数据库的操作权限。

用户名和认证数据库作为该用户的唯一标识符。 也就是说,如果两个用户具有相同的名称,但是在不同的数据库中创建,则它们是两个不同的用户。 如果您打算拥有具有多个数据库权限的单个用户,请在适用的数据库中创建具有角色的单个用户,而不是在不同数据库中多次创建用户。

1.3 认证用户

要验证用户,也可以在连接到 mongod 或 mongos 实例时使用命令行身份验证选项(例如:-u,-p,–authenticationDatabase)先连接到 mongod 或 mongos 实例,然后针对身份验证数据库运行 authenticate 命令或db.auth()方法。

要进行身份验证,客户端必须对用户的身份验证数据库进行身份验证。
例如,如果使用 mongo shell作为客户端,则可以使用–authenticationDatabase选项为用户指定身份验证数据库。

二、配置账号和密码

2.1 开启认证

MongoDB 默认安装完成以后,只允许本地连接,同时不需要使用任何账号密码就可以直接连接MongoDB,这样就容易被黑,让支付一些比特币,所以为了避免这些不必要的麻烦,所以我们需要给Mongo设置一个账号密码;

2.2 创建管理员用户

> use admin
switched to db admin
> db.createUser({user:"admin",pwd:"password",roles:["root"]})
Successfully added user: { "user" : "admin", "roles" : [ "root" ] }

2.3 认证登录

> db.auth("admin", "password")

2.4 MongoDB role 类型

数据库用户角色(Database User Roles)
    read:授予User只读数据的权限
    readWrite:授予User读写数据的权限

数据库管理角色(Database Administration Roles):
    dbAdmin:在当前dB中执行管理操作
    dbOwner:在当前DB中执行任意操作
    userAdmin:在当前DB中管理User

备份和还原角色(Backup and Restoration Roles):
    backup
    restore

跨库角色(All-Database Roles):
    readAnyDatabase:授予在所有数据库上读取数据的权限
    readWriteAnyDatabase:授予在所有数据库上读写数据的权限
    userAdminAnyDatabase:授予在所有数据库上管理User的权限
    dbAdminAnyDatabase:授予管理所有数据库的权限

集群管理角色(Cluster Administration Roles):
    clusterAdmin:授予管理集群的最高权限
    clusterManager:授予管理和监控集群的权限,A user with this role can access the config and local databases, which are used in sharding and replication, respectively.
    clusterMonitor:授予监控集群的权限,对监控工具具有readonly的权限
    hostManager:管理Server

2.5 添加数据库用户

> use flowpp
switched to db flowpp
> db.createUser({user: "flowpp", pwd: "flopww", roles: [{ role: "dbOwner", db: "flowpp" }]})   # 创建用户flowpp,设置密码flopww,设置角色dbOwner

2.6 查看系统用户

> use admin
switched to db admin
> db.system.users.find()  # 显示当前系统用户
{ "_id" : "admin.admin", "user" : "admin", "db" : "admin", "credentials" : { "SCRAM-SHA-1" : { "iterationCount" : 10000, "salt" : "9jXmylyRAK22TZmzv1Thig==", "storedKey" : "z76cVrBjX/CTFmn5RujtU+dz7Nw=", "serverKey" : "JQGonM84iDMI1nIXW7FdyOE55ig=" } }, "roles" : [ { "role" : "root", "db" : "admin" } ] }
{ "_id" : "flowpp.flowpp", "user" : "flowpp", "db" : "flowpp", "credentials" : { "SCRAM-SHA-1" : { "iterationCount" : 10000, "salt" : "KvocqWZA9E2tXBHpKpdAeQ==", "storedKey" : "50Kxc3LEgCSVN1z16S8g4A6jVp8=", "serverKey" : "0RSnsxd/7Yzmqro/YOHf/kfbHCk=" } }, "roles" : [ { "role" : "dbOwner", "db" : "flowpp" } ] }

2.7 删除用户

# 删除用户的时候需要切换到用户管理的数据库才可以删除;
1.切换admin ,删除用户flowpp ,删除失败> use admin
switched to db admin
> db.dropUser("flowpp")
false2.切换flowpp ,删除用户flowpp,删除成功
> use flowpp
switched to db flowpp
> db.dropUser("flowpp")
true

MongoDB的用户管理总结相关推荐

  1. 〖Python 数据库开发实战 - MongoDB篇⑥〗- MongoDB的用户管理

    订阅 Python全栈白宝书-零基础入门篇 可报销!白嫖入口-请点击我.推荐他人订阅,可获取扣除平台费用后的35%收益,文末名片加V! 说明:该文属于 Python全栈白宝书专栏,免费阶段订阅数量43 ...

  2. Node.js + Express 4.x + MongoDB 构建登录注册-简易用户管理(四)

    登录和注册的功能算实现了,下面封装DBHelp和增加一个简单的用户管理,这样增删查改就集齐了. 在routes文件夹下面新建DBHelp.js,代码如下: const MongoClient=requ ...

  3. 浅析MongoDB用户管理

    1. 创建一个超级用户 use admin db.createUser({ user: "adminUserName", pwd: "userPassword" ...

  4. mongodb用户管理和服务安装

    一.忘记密码快速找回 任何系统忘记密码都是一样的操作:以无需授权的模式开启程序,然后进入系统修改权限设置,退出来重新以授权方式开启程序.MySQL是这样,MongoDB也是这样.好的系统都提供了无授权 ...

  5. MongoDB日常运维之用户管理

    MongoDB 数据库默认是没有用户名及密码的,即无权限访问限制.为了方便数据库的管理和安全,需创建数据库用户. 1,用户的权限 用户中权限的说明: 权限 说明 Read 允许用户读取指定数据库 re ...

  6. Node.js+mongodb 学习笔记(三)swagger注释+用户管理

    Node.js+mongodb 学习笔记(三)swagger注释+用户管理 Node.js+mongodb 学习笔记(三)swagger注释+用户管理 用户注册 用户登录 修改密码 swagger注释 ...

  7. Mongodb的权限管理

    Mongodb的权限管理 1. 为什么要进行权限管理的设置 刚安装完毕的mongodb默认不使用权限认证方式启动,与MySQL不同,mongodb在安装的时候并没有设置权限,然而公网运行系统需要设置权 ...

  8. MongoDB 杭州用户会全记录(千寻位置、妈妈帮、阿里云专家等精彩分享)

    MongoDB杭州用户交流会于2017年3月12日下午在阿里巴巴西溪园区举行,吸引了来自全国各地的近300名用户参与,千寻位置.妈妈帮.阿里云等公司的5位技术专家分享了MongoDB 的运维管理及使用 ...

  9. 基于 Egg.js 框架的 Node.js 服务构建之用户管理设计

    转载需经本人同意且标注本文原始地址:https://zhaomenghuan.github.io/blog/nodejs-eggjs-usersytem.html 前言 近来公司需要构建一套 EMM( ...

  10. openshift用户管理_OpenShift Express Web管理控制台:入门

    openshift用户管理 本周, 最新版本的OpenShift为已经很棒的PaaS Cloud提供商带来了两个非常好的功能. 首先,JBoss AS已从7.0升级到7.1,并且所有新的Express ...

最新文章

  1. 12月国内网站流量统计5强:360安全中心后来居上
  2. C 图像处理 颜色相关宏定义
  3. 《论语》读后颜渊第十二主要大意
  4. vba 自动换行_Excel中quot;强制换行quot;quot;快速求和quot;等操作,这9个AlT键技巧全都包含了...
  5. ise的时钟ip核_Vivado CIC IP核滤波器详解(一)
  6. java+编辑距离自动机_编辑距离,重叠,组装算法和python程序.pptx
  7. c语言实验报告大气,dsp实验报告心得体会
  8. python 元编程有多强_马克的Python学习笔记#元编程 3
  9. Hvdc-vsc. 基于vsc的柔性直流输电模型 pscad实现
  10. 单片机、ARM与DSP对比
  11. 拓扑排序算法原理及Java代码实现
  12. 2014.3 USACO月赛T1 Watering the Fields
  13. 初中计算机课程百科,理科、百科
  14. KEGG 通路富集分析图解
  15. MQTT keepalive和reconnect
  16. 【网络安全】网络安全的重要性你知道吗?
  17. 一种应用于档案馆档案库房的三维可视化温湿度监控系统平台
  18. 中介/代理,正/反向代理,直/间接代理,概念清晰解释
  19. PVE7更新AQC107网卡驱动,解决奇葩问题。
  20. Dialer拨号定制功能

热门文章

  1. 计算机电脑上可以做作业吗,一起作业电脑版
  2. s型人口增长曲线matlab程序,matlab人口预测及数据曲线拟合.ppt
  3. windows 2008 R2 断电进入修复模式,并且无法使用usb键盘鼠标的解决方法
  4. windows 资源管理器已停止工作的解决办法
  5. 转】用Hadoop构建电影推荐系统
  6. 计算机无法识别点读笔,点读笔插电脑上不识别
  7. 用户权限---u+s\g+s\o+t三个特殊权限说明
  8. HSSF、XSSF、SXSSF、对Excel的区别,以及对应不同后缀名Excel(xls,xlsx)的使用
  9. ubuntu下lnmp安装mysql密码_Ubuntu LNMP环境搭建
  10. 2022危险化学品经营单位主要负责人考试题模拟考试题库模拟考试平台操作