• MongoDB内置角色详解(自官方文档)


    1 数据库用户角色

    每个数据库都包含下列的角色:

    read : 提供读取所有的非系统集合的能力,也能读取以下系统集合:system.indexes,system.js,system.namespaces
    readWrite:提供所有读权限另外还能修改非系统集合和system.js集合

    2 数据库管理角色

    每个数据库都包含以下数据库管理员角色

    dbAdmin:提供执行管理任务的能力,比如schema相关的任务,索引和聚合分析。这个角色不能对用户和角色做授权管理
    dbOwner:数据库拥有者可以在数据库上执行任何管理动作,这个角色组合了readWrite,dbAdmin,userAdmin角色的特权
    userAdmin:在当前数据库中创建和修改角色和用户的能力,userAdmin角色允许用户授予任何特权给任何用户,包括他们自己,此角色还可以直接提供superuser 访问任何数据库,甚至是admin数据库,集群。
     

    3  集群管理角色

    admin数据库包括下列角色来管理整个系统而不仅仅是单个数据库,这些角色包括但不限于副本集和分片集群管理功能

    clusterAdmin:提供最大的机器管理访问权限,此角色组合了clusterManager,clusterMonitor和hostManager角色,另外此角色还提供dropDatabase动作
    clusterManager:在机器上能进行管理和监控动作。拥有此角色的用户可以访问config和local数据库,它们分别用于分片和副本集
    clusterMonitor:为监控工具提供只读权限,比如MongoDB cloud manager 和ops manager 监控代理
    hostManager:提供监控和管理服务器的能力
     

    4 备份和恢复角色

    admin数据库包含下列角色用来备份和恢复数据

    backup:提供最小的备份数据的权限,该角色提供了足够的权限用于:MongoDB cloud manager 备份代理、ops manager 备份代理或者用于mongodump备份整个mongod实例
    restore:提供权限用来从备份恢复数据,但是不包括system.profile集合数据。此角色提供了足够的权限用于使用不带--oplogReplay选项的mongorestore恢复数据
     

    5 所有数据库角色

    下列角色在admin数据库上都可获取到,并能应用于所有数据库除了local和config

    readAnyDatabase:在所有的数据库上提供和read特权一样只读的权限,除了local和config
    readWriteAnyDatabase:在所有的数据库桑提供和readWrite一样的权限,除了local和config
    userAdminAnyDatabase:在所有的数据库桑提供和userAdmin一样的权限,除了local和config
    dbAdminAnyDatabase:在所有的数据库桑提供和dbAdmin一样的权限,除了local和config,此角色还能在集群上执行listDatabases命令
     

    6 超级用户角色

    root:提供readWriteAnyDatabase, dbAdminAnyDatabase, userAdminAnyDatabase, clusterAdmin, restore, backup角色的组合权限
     

    7 内部角色

    __system:提供对数据库中任何对象采取任何操作的特权。

    参考 官方文档
     

  • 相关阅读:
    javascript 介绍
    命令提示符(命令行)
    node(1) hello world
    用Vgg16来提取特征
    VGG16学习
    注意力模型
    统计学习方法
    数字图像处理(五)
    数字图像处理(四)
    BN
  • 原文地址:https://www.cnblogs.com/DBABlog/p/12926930.html
Copyright © 2020-2023  润新知