千家信息网

mongodb用户权限

发表于:2025-02-20 作者:千家信息网编辑
千家信息网最后更新 2025年02月20日,mongodb 开启用户认证:mongodb开启用户认证之后,要通过用户名密码的方式登录现在需要创建一个帐号,该账号需要有grant权限,即:账号管理的授权权限。注意一点,帐号是跟着库走的,所以在指定
千家信息网最后更新 2025年02月20日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();
















用户 数据 数据库 角色 权限 帐号 管理 账号 函数 库里 认证 验证 参数 可以通过 备份 字段 密码 数组 方式 是在 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 cmd登录数据库改密码 二维码支付数据库 摩托罗拉服务器硬盘 杭州的未来科技城里面互联网公司 服务器上有时候没网怎么回事 镇网络安全专题会议记录2021 芜湖应用软件开发公司哪个好 nc网络安全防护系统 广州曼巴网络技术有限 数据库的可公开验证更新 中央网信办网络安全协调胡啸 湛江无限软件开发报价行情 云端服务器能拖多少端口 软件开发行业盈利方式 pve服务器是什么 被拦截的病毒算不算网络安全事件 导入数据库出现504错误 公司服务器中勒索病毒处理流程 文件存储还是数据库文件安全 简单的数据库教务系统 如何快速熟悉网络安全知识 数据库替换字段在哪呢 服务器上有时候没网怎么回事 软件开发求职信模板 国家网络安全宣传周湖北 期货软件开发投资 数据库博客表的创建 服务器插多少个硬盘 软件开发就业前景工资多少 斗罗大陆服务器的地址
0