码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Docker之MongoDB容器中创建用户与授权操作


    Docker之MongoDB容器中创建用户与授权操作

    文章目录

    • Docker之MongoDB容器中创建用户与授权操作
    • 1. 拉取MongoDB镜像
    • 2. 运行容器
    • 3. 创建用户与授权
      • 1. 创建管理员用户
      • 2. 管理员用户创建其他用户
      • 2. 修改用户
      • 4. 删除用户

    其他配置参照docker Hub官网:Mongo - Official Image | Docker Hub

    1. 拉取MongoDB镜像

    docker pull mongo:4.2.23
    
    • 1

    2. 运行容器

    1. 运行一个名称为auth_mongo镜像,且挂载容器数据券为F:/dockeData/mongodb4223/data/db:/data/db
    2. 通过--auth来开启授权功能
    # --auth表示连接mongodb时需要授权
    docker run -it -d --name auth_mongo -v F:/dockeData/mongodb4223/data/db:/data/db -p 27017:27017 mongo:4.2.23 --auth
    
    • 1
    • 2

    3. 创建用户与授权

    进入容器内部创建用户

    1. 创建管理员用户

    #进入容器
    docker exec -it auth_mongo mongo admin
    # 添加管理员用户
    db.createUser({ user:'admin',pwd:'admin@123',roles:[ { role:'root', db: 'admin'}]});
    # 切换到admin数据库
    use admin
    # 登录认证
    db.auth('admin', 'admin@123')
    # 查看数据库
    show dbs
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    2. 管理员用户创建其他用户

    1. 先登录管理员账户;
    2. 切换到某个数据库并创建其他用户
    # 1.先使用admin账户登录
    use admin
    db.auth('admin','admin@123')
    # 2.切换到并创建my_db库
    use my_db
    # 在my_db数据库下创建test_user用户
    db.createUser({user:'test_user',pwd:'test_user',roles:['readWrite']})
    #通过账号密码登录并添加users集合数据
    db.auth("test_user","test_user")
    # 插入测试数据
    db.users.insert( { name:"jinshengyuan", age:22} )
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    2. 修改用户

    如修改test_user用户的角色

    db.updateUser({user:'test_user',pwd:'test_user',roles:[{role:'userAdminAnyDatabase',db:'admin'}]})
    
    • 1

    4. 删除用户

    # 删除用户
    db.dropUser('test_user')
    
    • 1
    • 2

    )

    • 相关阅读:
      SpringSecurity入门
      五、C++ 函数重载
      在IDEA本地开发时Flink CDC和Flink的guava版本冲突解决办法
      BufferCache与PageCache
      Infuse Mac视频播放器 中文
      基于LinuxC语言实现的TCP多线程/进程服务器
      CentOS 7中安装ZooKeeper
      STM32中SPI通信的完整C语言代码范例
      【李宏毅】注意力机制+transformer详解
      化合物修饰壳聚糖水凝胶:丙烯酸接枝/聚乙烯醇/温敏淫羊藿苷/醛-亚胺-壳聚糖水凝胶的制备
    • 原文地址:https://blog.csdn.net/yuanjinshenglife/article/details/136290627
    • 最新文章
    • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
      用 Hashids 优雅解决 C 端自增 ID 暴露问题
      V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
      LLVM Pass快速入门(四):代码插桩
      milkup:桌面端 markdown AI续写和即时渲染
      基于项目工程构建SBOM(软件物料清单)的研究
      鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
      .NET 中如何快速实现 List 集合去重?
      扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
      浅谈数据访问层
    • 热门文章
    • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
      奉劝各位学弟学妹们,该打造你的技术影响力了!
      五年了,我在 CSDN 的两个一百万。
      Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
      面试官都震惊,你这网络基础可以啊!
      你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
      心情不好的时候,用 Python 画棵樱花树送给自己吧
      通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
      13 万字 C 语言从入门到精通保姆级教程2021 年版
      10行代码集2000张美女图,Python爬虫120例,再上征途
    小工具 小游戏
    Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

    京公网安备 11010502049817号