关键词:
零基础学习MongoDB (三)—— 管理用户
在b站上听了几个老师的课,有涉及到mongodb的一些历史,比如删库勒索,因此开放的数据库是很危险的,所以我们需要给它们添加管理用户,这样为我们的数据安全加一道墙
一、管理员类型
mongodb
提供了很多了角色,用于不同情境下对数据库进行管理:
- 数据库用户角色:
read
、readWrite
- 数据库管理角色:
dbAdmin
、dbOwner
、userAdmin
- 集群管理角色:
clusterAdmin
、clusterManager
、clusterMonitor
、hostManager
- 备份恢复角色:
backup
、restore
- 所有数据库角色:
readAnyDatabase
、readWriteAnyDatabase
、userAdminAnyDatabase
、dbAdminAnyDatabase
- 超级用户角色:
root
特别注意:dbOwner
是某个数据库的所有者,root
拥有所有权限
二、创建超级管理员用户
mongodb
自带的admin
数据库,是所有管理员的集合
默认mongodb
不开启认证登录,在开启之前,我们必须要创建一个超级管理员,用于管理其他账户,还需要配置cfg
文件开启安全认证
在开启安全认证前在命令行输入mongo
,看到的会是这样一大串(记住噢)
1. 创建用户
通过db.createUser
配置用户名,密码,权限,用户管理的数据库
> use admin
switched to db admin
> db.createUser(user:"admin",pwd:"123456",roles:[role:"root",db:"admin"])
Successfully added user:
"user" : "admin",
"roles" : [
"role" : "root",
"db" : "admin"
]
通过show users
查看当前数据库中的用户
2. 开启认证登录
修改mongodb
安装目录下的bin
目录下的mongod.cfg
文件,添加以下代码
security:
authorization: enabled
注意:文件中#
号开头的可以理解为是注释掉的,所以如果不想开启安全认证可以加#
号来关闭
3. 重启服务
win+R
键,输入services.msc
,重启mongodb Server
服务
4. 通过验证登录
当我们成功开启安全认证后,命令行直接输入mongo
,看到的东西会只有一点,相对于之前的少了很多
同时当输入show dbs
查看数据库时,会发现没有数据库,这时候我们需要登录我们先前注册的账号,采用命令,填写的内容分别是账号和密码,成功登录会返回1
,否则返回0
db.auth("admin","123456")
这时候我们再查看数据库,就可以看到内容了,
三、更新用户密码
db.updateUser('admin',pwd:'password')
操作演示
更改用户权限只需要将,后面的
pwd
换成role
,修改即可,可多个
四、删除用户
db.dropUser('username')
在有删除该库权限的用户下,即可删除用户
五、创建某个数据库管理员
创建了一个只能管理test
数据库的管理员
db.createUser(user:"test",pwd:"123456",roles:[role: "dbOwner", db: "test" ])
在登录时,我们需要切换到对应的test
库再进行验证登录
use test
db.auth("test","123456")
零基础学习mongodb——mongodb简介(代码片段)
接下来会学习node.js以及mongodb数据库的知识,好好学习,天天向上!一、数据库简介数据库是按照数据结构来组织、存储和管理数据的仓库。我们的程序都是在内存中运行的,一旦程序运行结束或者计算机断电ÿ... 查看详情
零基础学习mongodb——mongodb简介(代码片段)
接下来会学习node.js以及mongodb数据库的知识,好好学习,天天向上!一、数据库简介数据库是按照数据结构来组织、存储和管理数据的仓库。我们的程序都是在内存中运行的,一旦程序运行结束或者计算机断电ÿ... 查看详情
零基础学习mongodb——集合操作(代码片段)
零基础学习MongoDB(四)——集合操作一、创建集合使用db.createCollection()方法来创建集合语法格式:db.createCollection(name,options)参数说明:name:要创建的集合名称options:可选参数,指定有关内存大小及索引的选项options可... 查看详情
零基础学习mongodb——集合操作(代码片段)
零基础学习MongoDB(四)——集合操作一、创建集合使用db.createCollection()方法来创建集合语法格式:db.createCollection(name,options)参数说明:name:要创建的集合名称options:可选参数,指定有关内存大小及索引的选项options可... 查看详情
零基础学习mongodb——连接数据库(代码片段)
一、安装MongoDB官网下载下载后,“下一步”安装即可二、启动MongoDB服务器命令行运行MongoDB服务,在安装完成之后会有MongoDB文件夹,运行bin目录下的mongod.exe文件或者可以将bin配置到环境变量path中三、连接数据库cmd命... 查看详情
零基础学习mongodb——连接数据库(代码片段)
一、安装MongoDB官网下载下载后,“下一步”安装即可二、启动MongoDB服务器命令行运行MongoDB服务,在安装完成之后会有MongoDB文件夹,运行bin目录下的mongod.exe文件或者可以将bin配置到环境变量path中三、连接数据库cmd命... 查看详情
零基础学习mongodb——文档crud操作(代码片段)
一、插入数据1.1插入单条文档1.1.1insert函数语法格式:db.collectionName.insert(文档)db是当前操作的数据库collectionName是操作的集合,没有会自动创建插入的文档如果没有_id属性,会自动创建例如在user集合下插入单个文档db.... 查看详情
零基础学习mongodb——文档crud操作(代码片段)
一、插入数据1.1插入单条文档1.1.1insert函数语法格式:db.collectionName.insert(文档)db是当前操作的数据库collectionName是操作的集合,没有会自动创建插入的文档如果没有_id属性,会自动创建例如在user集合下插入单个文档db.... 查看详情
rancher运维-从零开始学习|rke部署k8s|容器管理(代码片段)
Rancher运维-从零开始学习|RKE部署K8S|容器管理一、概述①基础设施编排②容器编排与调度③应用商店④企业级权限管理二、RKE①REK1和RKE2的区别三、RKE1部署K8S1.1基础环境部署①SSH用户必须是节点上docker用户组的成员②禁用交换功... 查看详情
mongodb的权限管理(代码片段)
Mongodb的权限管理1.为什么要进行权限管理的设置2.mongodb的权限管理方案3.mongodb超级管理员账号的创建3.1创建超级用户3.2以权限认证的方式启动mongodb数据库3.3登录验证4.创建普通用户4.1在使用的数据库上创建普通用户4.2在admin用户... 查看详情
mongodb的用户管理总结(代码片段)
基础篇(能解决工作中80%的问题):MongoDB的概述、应用场景、下载方式、连接方式和发展历史等MongoDB数据类型、重要概念以及shell常用指令MongoDB文档的各种增加、更新、删除操作总结MongoDB各种查询操作总结MongoDB对列的各... 查看详情
mongodb的用户管理总结(代码片段)
基础篇(能解决工作中80%的问题):MongoDB的概述、应用场景、下载方式、连接方式和发展历史等MongoDB数据类型、重要概念以及shell常用指令MongoDB文档的各种增加、更新、删除操作总结MongoDB各种查询操作总结MongoDB对列的各... 查看详情
node.js零基础详细教程:mongodb数据库操作
...此教程将教会大家安装Node、搭建服务器、express、mysql、mongodb、编写后台业务逻辑、编写接口,最后完成一个完整的项目后台,预计共10天课程。 数据库 数据库管理结构,一般分为两种:B/S架构 C/S架构。B/S架构: ... 查看详情
rancher运维-从零开始学习|rke部署k8s|容器管理(代码片段)
Rancher运维-从零开始学习|RKE部署K8S|容器管理一、概述①基础设施编排②容器编排与调度③应用商店④企业级权限管理二、RKE①REK1和RKE2的区别三、RKE1部署K8S1.1基础环境部署①SSH用户必须是节点上docker用户组的成员②禁用交换功... 查看详情
rancher运维-从零开始学习|rke部署k8s|容器管理(代码片段)
Rancher运维-从零开始学习|RKE部署K8S|容器管理一、概述①基础设施编排②容器编排与调度③应用商店④企业级权限管理二、RKE①REK1和RKE2的区别三、RKE1部署K8S1.1基础环境部署①SSH用户必须是节点上docker用户组的成员②禁用交换功... 查看详情
零基础快速开发vue图书管理系统—角色管理篇(代码片段)
零基础快速开发Vue图书管理系统—角色管理篇(五)一、用户管理页面前端结构部分<template><div><a-card><h2>用户管理</h2><a-divider></a-divider><a-button>添加用户</a-button><a-div 查看详情
零基础快速开发vue图书管理系统—角色管理篇(代码片段)
零基础快速开发Vue图书管理系统—角色管理篇(五)一、用户管理页面前端结构部分<template><div><a-card><h2>用户管理</h2><a-divider></a-divider><a-button>添加用户</a-button><a-div 查看详情
零基础快速开发vue图书管理系统—登录注册篇(代码片段)
...要采用:Node.js、Koa、Mongoose等数据库主要采用:MongoDB三、使用vue-cli3创建项目如何搭建环境看我之前 查看详情