MongoDB 用户管理

 更新时间:2020年09月01日 08:57:04   作者:mySoul  
这篇文章主要介绍了MongoDB 如何对用户管理,帮助大家更好的理解和使用MongoDB数据库,感兴趣的朋友可以了解下

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

进入MongoDB的Shell

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

mongo

切换数据库

use admin

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

创建超级管理员用户

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

db.createUser( 
 { user: "admin", 
  customData:{description:"superuser"},
  pwd: "admin", 
  roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] 
 } 
)

其中各个字段解释如下

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

创建超级用户

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

db.createUser(
  {
    user:"root",
    pwd:"pwd",
    roles:["root"]
  }
)

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

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

> 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

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

查看和创建用户

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

show users

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

修改密码

use admin
db.changeUserPassword("username", "xxx")

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

修改密码和用户信息

db.runCommand(
  {
    updateUser:"username",
    pwd:"xxx",
    customData:{title:"xxx"}
  }
)

删除数据库用户

use admin
db.dropUser('user001')

创建其他数据库管理员

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

核心,启用权限验证

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

mongo --auth

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

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

net stop mongodb;
net start mongodb;

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

相关文章

  • mongoDB中CRUD的深入讲解

    mongoDB中CRUD的深入讲解

    这篇文章主要给大家介绍了关于mongoDB中CRUD的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用mongoDB具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-08-08
  • Spring Boot中使用MongoDB数据库的方法

    Spring Boot中使用MongoDB数据库的方法

    MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大
    2018-02-02
  • MongoDB下根据数组大小进行查询的方法

    MongoDB下根据数组大小进行查询的方法

    这篇文章主要介绍了MongoDB下根据数组大小进行查询的方法,分别实现了指定大小的数组和某个范围的数组,需要的朋友可以参考下
    2014-04-04
  • Mongodb如何开启用户访问控制详解

    Mongodb如何开启用户访问控制详解

    默认启动 MongoDB 服务时没有任何参数,可以对数据库任意操 作,而且可以远程访问数据库,所以推荐开发阶段可以不设置任何参数,但对于生产环境还是要仔细考虑一下安全方面的因素,下面就介绍了Mongodb开启用户访问控制的相关资料。
    2017-01-01
  • MongoDB常用命令小结

    MongoDB常用命令小结

    这篇文章主要介绍了MongoDB的一些常用命令,学习与使用MongoDB数据库的朋友可以参考下
    2013-08-08
  • MongoDB Shell 命令实例总结【进阶篇】

    MongoDB Shell 命令实例总结【进阶篇】

    这篇文章主要介绍了MongoDB Shell 命令,结合实例形式总结分析了MongoDB数据库常用的查询、更新、插入、集合、函数等相关操作技巧与注意事项,需要的朋友可以参考下
    2019-02-02
  • MongoDB系列教程(七):MongoDb数据结构详解

    MongoDB系列教程(七):MongoDb数据结构详解

    这篇文章主要介绍了MongoDB系列教程(七):MongoDb数据结构详解,本文讲解了Collections、Document、GridFS等3种数据结构,需要的朋友可以参考下
    2015-05-05
  • 基于MongoDB实现聊天记录的存储问题小结

    基于MongoDB实现聊天记录的存储问题小结

    MongoDB是一个高性能、易部署、易使用的数据库系统,具有丰富的功能和特点,适用于各种规模的应用程序和场景,这篇文章给大家介绍基于MongoDB实现聊天记录的存储问题,感兴趣的朋友一起看看吧
    2024-02-02
  • Mongodb过滤器filter选择要返回的数组子集操作方法

    Mongodb过滤器filter选择要返回的数组子集操作方法

    Mongodb使用过滤器 $filter根据指定条件选择要返回的数组子集,这篇文章主要介绍了Mongodb对嵌套文档数组进行查询操作,需要的朋友可以参考下
    2023-07-07
  • 解决MongoDB占用内存过大频繁死机的方法详解

    解决MongoDB占用内存过大频繁死机的方法详解

    这篇文章主要介绍了解决MongoDB占用内存过大频繁死机的方法详解,需要的朋友可以参考下
    2020-02-02

最新评论