一、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管理用户的认证机制的更多相关文章

  1. mongodb添加用户和认证

    Mongodb默认启动是不带认证,也没有账号,只要能连接上服务就可以对数据库进行各种操作,这样可不行.现在,我们得一步步开启使用用户和认证. 第一步,我们得定位到mongodb的安装目录.我本机的是C ...

  2. win10环境下为mongoDB创建用户并认证登录

    一.配置mongoDB的bin目录到环境变量中的path;例如:D:\DatabaseService\MongoDB\Server\4.0\bin 二.cmd打开控制台,然后输入mongo回车,可以进 ...

  3. mongodb管理与安全认证

    mongodb数据管理 数据的导出.数据导入数据导出 mongoexport [使用mongoexport -h查看参数] 数据导入 mongoimport [使用mongoimport -h查看参数 ...

  4. 【Mongodb】用户和认证 权限总结

    开启MongoDB服务时不添加任何参数时,默认是没有权限验证的,登录的用户可以对数据库任意操作而且可以远程访问数据库!   在刚安装完毕的时候MongoDB都默认有一个admin数据库,此时admin ...

  5. mongodb 增加用户以及认证用户

    test>use admin switched to db admin admin>db.addUser('yshy','yshy') { "user" : " ...

  6. MongoDB管理

    前几篇文章都是从开发和使用的角度了解了MongoDB的各个知识点,这篇文章将从MongoDB管理的角度入手,了解MongoDB管理所要了解的基本知识. 数据库命令 在前面几篇文章中,已经接触了一些数据 ...

  7. 为mongodb加用户授权并使用RockMongo进行管理

    在刚安装完mongodb后是没有管理员的,如果要为mongodb设置管理员在启动时需要以用户授权的方式启动: /usr/local/webserver/mongodb/bin/mongod --dbp ...

  8. window服务器上mongodb的安装与如何将mongodb设置为服务,为mongodb设置管理用户,mongodb连接字符串配置

    最近公司有一个项目模块让用nosql-mongodb替换了,故,对mongodb做了一点研究,然后分享一下! 1.首先说一下安装时的坑 下载mongodb,如果你从官网下载,将会是一件很慢的事情,在公 ...

  9. MongoDB快速入门学习笔记7 MongoDB的用户管理操作

    1.修改启动MongoDB时要求用户验证加参数 --auth 即可.现在我们把MongoDB服务删除,再重新添加服务 mongod --dbpath "D:\work\MongoDB\dat ...

  10. mongodb之用户/认证/角色/权限管理

    前言 用户权限管理很重要,只给需要的权限,防止应用系统漏洞导致脱库 认证和授权 Authentication 认证识别,解决我是谁 Authorization 操作授权,我能做什么 认证机制 MONG ...

随机推荐

  1. sqoop 从数据库导入数据到hdfs

    前提 配置hadoop配置文件 前提 启动hadoop 配置hive 改名进入sqoop/conf 增加环境变量 tar xf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz ...

  2. 灵巧手 —— 智能仿生手 —— 人形机器人(humanoid)

    产品主页: https://www.brainco.cn/#/product/brain-robotics 国内销售的一款产品,美国华人生产的,灵巧度非常高的一款仿生手产品.

  3. 【转载】 CUDA中的Unified Memory

    为了结合上篇 文章   https://www.cnblogs.com/devilmaycry812839668/p/13264080.html 对RTX显卡是否能够实现P2P通信功能,同时专业级别显 ...

  4. 阿里提供的免费DNS服务器

    阿里提供的免费DNS服务器的介绍网页: https://developer.aliyun.com/mirror/DNS nameserver 223.5.5.5 nameserver 223.6.6. ...

  5. mujoco安装报错:mujoco_py/cymj.pyx:67:5: Exception check on 'c_warning_callback' will always require the GIL to be acquired.

    参考: https://blog.csdn.net/weixin_49373427/article/details/131981583 https://blog.csdn.net/CCCDeric/a ...

  6. 【转载】 在Ubuntu环境下,搜狗输入法乱码问题的解决

    原文作者:高坦的博客 | Tan's Blog 原文链接:https://www.cnblogs.com/gtscool/p/12234104.html本文采用 BY-NC-SA 许可协议.转载请注明 ...

  7. 【转载】 银河麒麟V10系统安装U盘制作

    版权声明:本文为CSDN博主「CPUOS520」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明.原文链接:https://blog.csdn.net/liuhao_0 ...

  8. 【转载】 解决VSCode运行或调试python文件无反应的问题

    ---------------- 版权声明:本文为CSDN博主「姜行者」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明.原文链接:https://blog.csdn. ...

  9. 旧物利用 - 将机顶盒改造为一台Linux开发机!

    前言 机顶盒型号:移动魔百盒CM201-2(CH),芯片组: hi3798mv300(hi3798mv3dmm),其他型号类似 理论上适用于以下SOC:Hi3798Mv100 / Hi3798Cv20 ...

  10. 9组-Beta冲刺-1/5

    一.基本情况(15分) 队名:不行就摆了吧 组长博客:9组-Beta冲刺-1/5 GitHub链接:https://github.com/miaohengming/studynote/tree/mai ...