当前位置: 首页 > news >正文

MongoDB创建或删除用户并验证数据库权限

本文假设在Ubuntu中安装了MongoDB,并用命令行工具mongosh演示。

一、创建用户并设置数据库权限

用户和数据库是关联的,要在登录时验证某个数据库,需要在相应的数据库内创建用户,即先切换到该数据库再创建用户。除非是root最高权限,不用验证数据库,也可以管理其他数据库,为了安全一般不会用root直接登录操作数据库。

为数据库 my_db 创建用户 myacc 并设置数据库权限:

# 假设已经创建好root用户(权限也是root)在admin数据库中
# 进入mongosh交互环境,来操作mongosh
mongosh mongodb://root:YOUR_PASSWORD@192.168.1.100:27017# 切换到my_db库,数据库不存在也可以切换
use my_db# 为数据库创建用户和密码,这里把权限(角色)设为dbOwner
db.createUser({user: "myacc",pwd: "YOUR_PASSWORD",roles: [ { role: "dbOwner", db: "my_db" } ]
})

用创建的用户登录并验证数据库:

# 按ctrl+D退出mongosh,并登录验证my_db库
mongosh mongodb://myacc:YOUR_PASSWORD@192.168.1.100:27017/my_db# 如果显示:my_db> 表示登录验证成功
# 否则会显示认证失败:MongoServerError: Authentication failed.

二、删除用户

删除用户也要先切换到对应的数据库,然后再删除用户。

use my_db
db.dropUser("myacc")

完毕。

http://www.lryc.cn/news/349127.html

相关文章:

  • 半小时搞懂STM32面经知识——RCC
  • 汇聚荣科技:拼多多开店没有流量应该怎么办?
  • uni-app(三):离线打包与插件引用(Android)
  • 数据分析——对比思维、A/B test
  • 深度探索Java工厂模式:创新与灵活性的结合
  • delphi6直连redis服务(用lua脚本redis模块)
  • 嵌入式Linux:编译和使用Protobuf库
  • 导航app为什么知道还有几秒变绿灯?
  • 设计模式 六大原则之单一职责原则
  • DOM重点核心(注册事件+DOM事件流)
  • 浅谈操作系统中的重要概念——线程(3)——设计模式
  • nginx配置域名与IP访问服务冲突问题
  • 2024OD机试卷-字符串序列判定 (java\python\c++)
  • 7-128 最长公共子串
  • 【瑞萨RA6M3】2. UART 实验
  • js遇到需要正则匹配来修改img标签+清除行内样式
  • Vue学习v-if与v-else-if
  • linux进阶高级配置,你需要知道的有哪些2-firewalld防火墙(一)
  • Centos 中如何汉化man命令
  • 原生小程序开发如何使用 tailwindcss
  • spring alibaba中的seata分布式事务
  • MQTT学习(二)
  • 入职Java,不会git被开除了。。。
  • Mysql 隔离级别
  • 每日一学—K邻算法:在风险传导中的创新应用与实践价值
  • 基于Springboot的校园疫情防控信息管理系统(有报告)。Javaee项目,springboot项目。
  • 【C++】内联函数、auto、范围for
  • Day 46 139.单词拆分
  • streamlit报错:AxiosError: Request failed with status code 403
  • java基础教学 |Java Stream API详解