服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - MongoDB - MongoDB 用户管理

MongoDB 用户管理

2020-09-12 18:30mySoul MongoDB

这篇文章主要介绍了MongoDB 如何对用户管理,帮助大家更好的理解和使用MongoDB数据库,感兴趣的朋友可以了解下

小小最近接触了MongoDB,所以这里开始学习MongoDB,之用户管理模块的相关内容。

进入MongoDB的Shell

这里输入如下的命令,进入MongoDB的shell

?
1
mongo

切换数据库

?
1
use admin

使用如上的命令,切换数据库到admin数据库。

创建超级管理员用户

创建超级管理员权限的用户

?
1
2
3
4
5
6
7
db.createUser(
 { user: "admin",
  customData:{description:"superuser"},
  pwd: "admin",
  roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
 }
)

其中各个字段解释如下

  • user字段: 新用户的名字。
  • pwd 字段 用户的密码
  • cusomData 字段,任意内容,可以是用户名的全民介绍。
  • roles 字段 指定用户的角色,用于给一个空数组,给新用户设定空的角色,在roles字段,可以指定设置相关的角色。
  • db 数据库的名字,用于管理数据库。

创建超级用户

这里创建一个超级用户,用于管理全部用户的权限

?
1
2
3
4
5
6
7
db.createUser(
  {
    user:"root",
    pwd:"pwd",
    roles:["root"]
  }
)

创建一个业务数据库的管理员的用户

这个用户专门负责一个或者几个数据库的增删查改。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
> db.createUser({
  user:"user001",
  pwd:"123456",
  customData:{
    name:'jim',
    email:'jim@qq.com',
    age:18,
  },
  roles:[
    {role:"readWrite",db:"db001"},
    {role:"readWrite",db:"db002"},
    'read'// 对其他数据库有只读权限,对db001、db002是读写权限
  ]
})

其中

  • 数据库用户角色,read,readWrite。
  • 数据库管理角色: dbAdmin,dbOwner,userAdmin
  • 集群管理角色: clusterAdmin,clusterManager,clusterMonitor,hostManage。
  • 备份恢复角色: backup,restore。
  • 所有数据库角色: readAnyDatabase。readWriteAnyDatabase,userAdminAnyDatabase,dbAdminAnyDatabase。
  • 超级用户角色: root
  • 内部角色 _system

这样就完成了一个最基本的数据库管理角色的创建。

查看和创建用户

使用如下的命令,进行查看和创建用户

?
1
show users

使用该命令可以实现对用户的查看和创建用户。

修改密码

?
1
2
use admin
db.changeUserPassword("username", "xxx")

使用该命令,可以实现对密码的修改。

修改密码和用户信息

?
1
2
3
4
5
6
7
db.runCommand(
  {
    updateUser:"username",
    pwd:"xxx",
    customData:{title:"xxx"}
  }
)

删除数据库用户

?
1
2
use admin
db.dropUser('user001')

创建其他数据库管理员

?
1
2
3
4
5
6
// 登录管理员用户
use admin
db.auth('admin','admin')
// 切换至db001数据库
use db001
// ... 増查改删该数据库专有用户

核心,启用权限验证

权限设定完成以后,需要输入如下的命令,用于启用权限验证。

?
1
mongo --auth

所有的修改,都需要重写启动mongodb

所有的修改,都需要重写启动mongodb,才可以生效

?
1
2
net stop mongodb;
net start mongodb;

以上就是MongoDB 用户管理的详细内容,更多关于MongoDB 用户管理的资料请关注服务器之家其它相关文章!

原文链接:https://www.iming.info/2020/08/07/%E6%96%B0%E7%9F%A5-mongodb-%E8%B4%A6%E5%8F%B7%E7%AE%A1%E7%90%86/?utm_source=tuicool&utm_medium=referral

延伸 · 阅读

精彩推荐
  • MongoDBMongodb索引的优化

    Mongodb索引的优化

    MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。接下来通过本文给大家介绍Mongodb索引的优化,本文介绍的非常详细,具有参考借鉴价值,感...

    MRR3252020-05-05
  • MongoDBWindows下MongoDB配置用户权限实例

    Windows下MongoDB配置用户权限实例

    这篇文章主要介绍了Windows下MongoDB配置用户权限实例,本文实现需要输入用户名、密码才可以访问MongoDB数据库,需要的朋友可以参考下 ...

    MongoDB教程网3082020-04-29
  • MongoDBMongoDB查询之高级操作详解(多条件查询、正则匹配查询等)

    MongoDB查询之高级操作详解(多条件查询、正则匹配查询等)

    这篇文章主要给大家介绍了关于MongoDB查询之高级操作(多条件查询、正则匹配查询等)的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者...

    w田翔3872020-12-19
  • MongoDB在mac系统下安装与配置mongoDB数据库

    在mac系统下安装与配置mongoDB数据库

    这篇文章主要介绍了在mac系统下安装与配置mongoDB数据库的操作步骤,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪...

    CXYhh1219312021-11-14
  • MongoDBmongodb数据库基础知识之连表查询

    mongodb数据库基础知识之连表查询

    这篇文章主要给大家介绍了关于mongodb数据库基础知识之连表查询的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用mongodb具有一定的参...

    ZJW02155642020-05-22
  • MongoDBMongoDB的索引

    MongoDB的索引

    数据库中的索引就是用来提高查询操作的性能,但是会影响插入、更新和删除的效率,因为数据库不仅要执行这些操作,还要负责索引的更新 ...

    MongoDB教程网2532020-05-12
  • MongoDBMongoDB系列教程(五):mongo语法和mysql语法对比学习

    MongoDB系列教程(五):mongo语法和mysql语法对比学习

    这篇文章主要介绍了MongoDB系列教程(五):mongo语法和mysql语法对比学习,本文对熟悉Mysql数据库的同学来说帮助很大,用对比的方式可以快速学习到MongoDB的命...

    MongoDB教程网3252020-05-01
  • MongoDBMongoDB多条件模糊查询示例代码

    MongoDB多条件模糊查询示例代码

    这篇文章主要给大家介绍了关于MongoDB多条件模糊查询的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用MongoDB具有一定的参考学习价值...

    浅夏晴空5902020-05-25