MongoDB 用户管理
小小最近接触了MongoDB,所以这里开始学习MongoDB,之用户管理模块的相关内容。
进入MongoDB的Shell
这里输入如下的命令,进入MongoDB的shell
mongo
切换数据库
useadmin
使用如上的命令,切换数据库到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
这样就完成了一个最基本的数据库管理角色的创建。
查看和创建用户
使用如下的命令,进行查看和创建用户
showusers
使用该命令可以实现对用户的查看和创建用户。
修改密码
useadmin db.changeUserPassword("username","xxx")
使用该命令,可以实现对密码的修改。
修改密码和用户信息
db.runCommand( { updateUser:"username", pwd:"xxx", customData:{title:"xxx"} } )
删除数据库用户
useadmin db.dropUser('user001')
创建其他数据库管理员
//登录管理员用户 useadmin db.auth('admin','admin') //切换至db001数据库 usedb001 //...増查改删该数据库专有用户
核心,启用权限验证
权限设定完成以后,需要输入如下的命令,用于启用权限验证。
mongo--auth
所有的修改,都需要重写启动mongodb
所有的修改,都需要重写启动mongodb,才可以生效
netstopmongodb; netstartmongodb;
以上就是MongoDB用户管理的详细内容,更多关于MongoDB用户管理的资料请关注毛票票其它相关文章!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。