gpt4 book ai didi

详解MongoDB的角色管理

转载 作者:qq735679552 更新时间:2022-09-28 22:32:09 26 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章详解MongoDB的角色管理由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

no.1 mongodb内建角色

  。

内建角色的种类和特点?

想要了解内建角色,还是少不了下面这张图,在mongodb中,用户的权限是通过角色绑定的方法来分配的。把某个角色绑定在某个用户上,那么这个用户就有这个角色对应的权限了.

详解MongoDB的角色管理

mongodb 4.0中的内建角色类型如下:

详解MongoDB的角色管理

这里对上面的内建角色所拥有的权限做以说明:

数据库用户角色:

read:用于读取所有非系统集合,以及下面三个系统集合:

system.indexes、system.js以及system.namesp 。

readwrite:拥有read角色的所有权限,并且可以修改所有非系统集合和system.js集合上的数据 。

数据库管理角色:

dbadmin:提供管理相关功能,例如查询统计信息,索引管理等 。

useradmin:提供管理数据库角色及用户的权限,具有这个角色的用户可以为当前数据库的任何用户,包括自己,分配任何角色和权限 。

dbowner:提供数据库所有者的权限,它可以对数据库进行任何管理操作,这个角色结合了readwrite、dbadmin、useradmin三种角色授予的权限.

集群管理角色:

此类角色提供了管理整个mongodb的权限,角色只能在admin数据库中进行授权.

clustermanager:提供对集群进行管理和监控的权限 。

clustermonitor:提供对监控工具的只读访问权限 。

hostmanager:提供监控和管理服务器的权限 。

clusteradmin:提供最高的集群管理访问权限,这个角色拥有clustermanager、clustermonitor和hostmanager角色授予的权限,除此之外,它还具有dropdatabase()权限 。

备份和恢复角色:

此类角色只能在admin数据库中备份和恢复.

backup:提供备份数据的权限,使用mongodump备份整个mongod实例 。

restore:提供还原数据库所需的权限,使用户可以通过mongorestore恢复数据 。

全数据库角色 。

全数据库角色用于管理所有自定义数据库,但是不包含local和config数据库,它只能被授予在admin用户下.

超级用户:

root,这个不需要过多解释.

用户只能在admin数据库中配置这个权限,拥有这个角色的用户可以对所有数据库进行任何操作.

内部角色:

__system仅仅用于mongodb内部的管理,不建议将这个权限分配个用户,防止用户对内部系统进行操作.

mongodb中的角色特点 。

  • 在mongodb中,授予用户某个角色的权限时,默认授予当前数据库
  • 角色授权可以授予集合级别的粒度
  • 角色授权分成系统集合以及非系统集合的访问权限
  • 每个数据库中的角色都可以分成一般角色和管理角色
  • 管理数据库可以使用所有的内建角色

no.2 创建自定义角色

  。

    上面的内容,更多的是讲述怎样使用内建角色,这里我们来看创建自定义角色的, 。

自定义角色有如下三个特点:

1、在一般数据库上创建的角色,只适用于当前数据库 。

2、在admin数据库上创建的角色,可适用于所有数据库 。

3、创建角色时,角色名字不能重复,否则报错alread exist 。

例如我们想给一个账号分配insert,update、select、而不给delete权限.

 语法:

其中,resource为指定数据库或者集合,若设置为空,则默认当前数据库的全部集合.

actions:指定权限 。

范例:

1、首先我们创建一个角色:

这个角色的名字叫做role_yeyz,它具有yeyz这个数据库下面的test集合的查找、插入、更新权限.

同时它集成了系统的内建权限read,内建权限的生效数据库是yeyz1 。

2、使用show roles查看当前角色的创建情况 。

这里它只显示了内建角色的信息,注意,这个角色所在的db是admin 。

3、此时我们将这个角色,授予给一个新的用户,yeyz_1 。

我们创建了一个新的用户yeyz_1,这个用户继承了我们第一步的自定义角色role_yeyz 。

4、开始认证并执行相关操作.

以上就是详解mongodb的角色管理的详细内容,更多关于mongodb的角色管理的资料请关注我其它相关文章! 。

原文链接:https://cloud.tencent.com/developer/article/1745489 。

最后此篇关于详解MongoDB的角色管理的文章就讲到这里了,如果你想了解更多关于详解MongoDB的角色管理的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com