【赵渝强老师】MongoDB管理用户的认证机制
一、MongoDB用户认证机制简介
为了认证客户端,你必须要添加一个对应的用户到MongoDB。基本的步骤分为以下几步:
- 用户管理接口:db.createUser()方法可以创建一个用户,添加完成后可以分配角色给用户,第一个用户必须是管理员,用来管理其他用户。你也可以更新存在的用户,必须修改密码和权限。
- 认证数据库:当添加一个用户后,你在某个指定的数据库中添加该用户,那么这个数据库对于该用户就是个认证数据库。一个用户可以有权限访问多个数据库,通过分配角色权限来做到。
- 认证用户:为了认证用户,可以通过db.author()方法。
二、MongoDB用户认证示例
- 在admin数据库中,创建一个超级用户,用于管理其他的的用户。
use admin
db.createUser({"user":"myadmin","pwd":"password","roles":["root"]})
- 重新登录数据库,执行:show dbs,发现依然可以访问。我们需要开启数据库的认证机制,在配置文件中设置以下参数:
auth=true
- 重启MongoDB,并且重新登录

- 执行:show dbs,出现错误

- 执行认证用户,执行show users查看用户信息
use admin
db.auth("myadmin","password")
show users

- 执行:show dbs,就能正常执行了。
- 在mydemo数据库中,创建一个新的用户
use mydemo
db.createUser({"user":"user1","pwd":"password","roles":["read"]})
注意:该用户只有读的角色
- 执行下面的操作,进行测试。
切换用户:
db.auth("user1","password") 查询collection:db.emp.findOne() --> 可以正常操作 插入新文档:db.testtable2.insert({"name","Tom"}) ---> 出错
- 修改用户的密码
db.updateUser("user1",{"pwd":"abcd"})
- 查看用户:show users

【赵渝强老师】MongoDB管理用户的认证机制的更多相关文章
- mongodb添加用户和认证
Mongodb默认启动是不带认证,也没有账号,只要能连接上服务就可以对数据库进行各种操作,这样可不行.现在,我们得一步步开启使用用户和认证. 第一步,我们得定位到mongodb的安装目录.我本机的是C ...
- win10环境下为mongoDB创建用户并认证登录
一.配置mongoDB的bin目录到环境变量中的path;例如:D:\DatabaseService\MongoDB\Server\4.0\bin 二.cmd打开控制台,然后输入mongo回车,可以进 ...
- mongodb管理与安全认证
mongodb数据管理 数据的导出.数据导入数据导出 mongoexport [使用mongoexport -h查看参数] 数据导入 mongoimport [使用mongoimport -h查看参数 ...
- 【Mongodb】用户和认证 权限总结
开启MongoDB服务时不添加任何参数时,默认是没有权限验证的,登录的用户可以对数据库任意操作而且可以远程访问数据库! 在刚安装完毕的时候MongoDB都默认有一个admin数据库,此时admin ...
- mongodb 增加用户以及认证用户
test>use admin switched to db admin admin>db.addUser('yshy','yshy') { "user" : " ...
- MongoDB管理
前几篇文章都是从开发和使用的角度了解了MongoDB的各个知识点,这篇文章将从MongoDB管理的角度入手,了解MongoDB管理所要了解的基本知识. 数据库命令 在前面几篇文章中,已经接触了一些数据 ...
- 为mongodb加用户授权并使用RockMongo进行管理
在刚安装完mongodb后是没有管理员的,如果要为mongodb设置管理员在启动时需要以用户授权的方式启动: /usr/local/webserver/mongodb/bin/mongod --dbp ...
- window服务器上mongodb的安装与如何将mongodb设置为服务,为mongodb设置管理用户,mongodb连接字符串配置
最近公司有一个项目模块让用nosql-mongodb替换了,故,对mongodb做了一点研究,然后分享一下! 1.首先说一下安装时的坑 下载mongodb,如果你从官网下载,将会是一件很慢的事情,在公 ...
- MongoDB快速入门学习笔记7 MongoDB的用户管理操作
1.修改启动MongoDB时要求用户验证加参数 --auth 即可.现在我们把MongoDB服务删除,再重新添加服务 mongod --dbpath "D:\work\MongoDB\dat ...
- mongodb之用户/认证/角色/权限管理
前言 用户权限管理很重要,只给需要的权限,防止应用系统漏洞导致脱库 认证和授权 Authentication 认证识别,解决我是谁 Authorization 操作授权,我能做什么 认证机制 MONG ...
随机推荐
- 兼容sentry协议的轻量级监控,glitchtip
前言 上一篇文章说了重启 sentry 的事 因为过程太折腾了,一度想过放弃 sentry 换成其他比较轻量级的开源监控系统 这不就给我找到了另外俩个 https://glitchtip.com/ h ...
- ELK多租户方案
一.前言 日志分析是目前重要的系统调试和问题排查的重要手段之一,而目前分布式系统由于实例和机器众多,所以构建一套统一日志系统是非常必要的:ELK提供了一整套解决方案,并且都是开源软件,之间互相配合使用 ...
- .NET 8 通用权限框架 前后端分离,开箱即用
前言 推荐一个基于.NET 8 实现的通用权限开发框架Admin.NET,前端使用Vue3/Element-plus开发. 基于.NET 8(Furion)/SqlSugar实现的通用管理平台.整合 ...
- CentOS安装RustDesk自建服务器
一.安装node.js 1.下载并解压 [root@VM-8-2-centos src]# cd /usr/local # 下载node文件 [root@VM-8-2-centos local]# w ...
- 【Half-Life】 Steam 安装半条命模组
安装办法参考自B站UP主[百科全叔]的文章 https://www.bilibili.com/read/cv543926 半条命模组在ModDB站上下载资源 https://www.moddb.com ...
- 【Spring Data JPA】08 多表关系 Part1 一对多关系操作
表关系概述: 1.一 对应 一 一对夫妻,一个男人只能有一个老婆,一个女人只能有一个老公,即这种对应关系 2.一 对应 多 [多对一] 一个年级具有多个班级,一个班级具有对应的所属年级,即这种上下层级 ...
- 关于“内网穿透”的一些知识(续3)—— NAT类型判断
前文: 关于"内网穿透"的一些知识(续2)-- 端口预测 ------------------------------------------- 本文是对前面几篇文章的补充.这里要 ...
- 在线flex布局----自己写的一个flex布局的小玩意,需要的私聊加关注0.0
- SMU 2024 spring 天梯赛3
SMU 2024 spring 天梯赛3 7-1 重要的话说三遍 - SMU 2024 spring 天梯赛3 (pintia.cn) I'm gonna WIN! I'm gonna WIN! I' ...
- CH02_数据类型
CH02_数据类型 数据类型 整型 描述:整型变量表示的是整型类型的数据,C++中能够表示整型的类型有以下几种方式,区别在于所占内存空间不同. 数据类型 占用空间 取值范围 short(短整型) 2字 ...