mongodb用户权限
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,mongodb 开启用户认证:mongodb开启用户认证之后,要通过用户名密码的方式登录现在需要创建一个帐号,该账号需要有grant权限,即:账号管理的授权权限。注意一点,帐号是跟着库走的,所以在指定
千家信息网最后更新 2026年11月02日mongodb用户权限mongodb 开启用户认证:
mongodb开启用户认证之后,要通过用户名密码的方式登录
现在需要创建一个帐号,该账号需要有grant权限,即:账号管理的授权权限。注意一点,帐号是跟着库走的,所以在指定库里授权,必须也在指定库里验证(auth)。
use admin
switched to db admin
> db.createUser(
... {
... user: "dba11",
... pwd: "dba11",
... roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
... }
... )
roles:指定用户的角色,可以用一个空数组给新用户设定空角色;在roles字段,可以指定内置角色和用户定义的角色。role里的角色可以选:
1.数据库用户角色:read、readWrite;
2. 数据库管理角色:dbAdmin、dbOwner、userAdmin;
3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
4. 备份恢复角色:backup、restore;
5. 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
6. 超级用户角色:root
// 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)
7. 内部角色:__system
Read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限:userAdminAnyDatabase 角色,用来管理用户,可以通过这个角色来创建、删除用户。验证:需要开启auth参数。
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限
----------------------------------
show users; 查看当前库下的用户
因为帐号都是在当前需要授权的数据库下授权的,那要是不在当前数据库下会怎么样?
> db
admin
> db.createUser(
... {
... user: "wbx",
... pwd: "wbx",
... roles: [
... { role: "readWrite", db: "sss" }, #在当前库下创建其他库的帐号,在admin库下创建test、abc库的帐号
... { role: "readWrite", db: "sssss" }
... ]
... }
... )
> show users;
创建了这么多帐号,怎么查看所有帐号?
db.system.users.find().pretty()
**********************************************************************************
造数测试:
for (var i = 1; i <= 100000; i++) {
db.db01.insert( { x : i , name: "MACLEAN" , sex:"女", name2:"maira", name3:"MACLEAN"} )
}
use db01
db.data.find({x:{$gt:40}}).explain();
mongodb开启用户认证之后,要通过用户名密码的方式登录
现在需要创建一个帐号,该账号需要有grant权限,即:账号管理的授权权限。注意一点,帐号是跟着库走的,所以在指定库里授权,必须也在指定库里验证(auth)。
use admin
switched to db admin
> db.createUser(
... {
... user: "dba11",
... pwd: "dba11",
... roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
... }
... )
roles:指定用户的角色,可以用一个空数组给新用户设定空角色;在roles字段,可以指定内置角色和用户定义的角色。role里的角色可以选:
1.数据库用户角色:read、readWrite;
2. 数据库管理角色:dbAdmin、dbOwner、userAdmin;
3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
4. 备份恢复角色:backup、restore;
5. 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
6. 超级用户角色:root
// 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)
7. 内部角色:__system
Read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限:userAdminAnyDatabase 角色,用来管理用户,可以通过这个角色来创建、删除用户。验证:需要开启auth参数。
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限
----------------------------------
show users; 查看当前库下的用户
因为帐号都是在当前需要授权的数据库下授权的,那要是不在当前数据库下会怎么样?
> db
admin
> db.createUser(
... {
... user: "wbx",
... pwd: "wbx",
... roles: [
... { role: "readWrite", db: "sss" }, #在当前库下创建其他库的帐号,在admin库下创建test、abc库的帐号
... { role: "readWrite", db: "sssss" }
... ]
... }
... )
> show users;
创建了这么多帐号,怎么查看所有帐号?
db.system.users.find().pretty()
**********************************************************************************
造数测试:
for (var i = 1; i <= 100000; i++) {
db.db01.insert( { x : i , name: "MACLEAN" , sex:"女", name2:"maira", name3:"MACLEAN"} )
}
use db01
db.data.find({x:{$gt:40}}).explain();
用户
数据
数据库
角色
权限
帐号
管理
账号
函数
库里
认证
验证
参数
可以通过
备份
字段
密码
数组
方式
是在
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技名片
湖南永感互联网科技有限公司
今日互联网科技
北京互联网科技公司
狮子座互联网科技有限公司
北京禾田雨橡互联网科技
沃里互联网科技
互联网科技网站
互联网科技博客
科技伦理 互联网公司
中国最先进互联网科技公司
互联网软件和科技
想开互联网科技公司怎么样
科技类公司包括互联网吗
启辰互联网科技
产业互联网科技服务公司
江苏互联网智能科技软件
有人说阿里系是互联网科技企业
河南商务圈互联网科技有限公司
小牛互联网科技有限公司地址
互联网与科技发展
青岛互联网科技公司
浩特互联网科技
亿人帮互联网科技
上海卓越科技 互联网
互联网科技中介
阿里互联网科技公司
中化能源互联网科技招聘
河南住房之家互联网科技
恒生互联网科技业指数调整周期