MongoDB的用户管理操作示例

Admin 2021-05-12 群英技术资讯 491 次浏览

      文本主要和大家分享的是关于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数据库的用户管理的介绍,本文介绍了创建,删除和修改的操作,且有示例代码,有需要的朋友可以参考参考,希望对大家学习有帮助。

群英智防CDN,智能加速解决方案

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

猜你喜欢

成为群英会员,开启智能安全云计算之旅

立即注册
专业资深工程师驻守
7X24小时快速响应
一站式无忧技术支持
免费备案服务
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
在线客服
微信公众号
返回顶部
返回顶部 返回顶部
在线客服
在线客服