文档

MongoDB数据库账号权限管理

更新时间:

您可以在DMS中非常便捷地管控MongoDB数据库账号及其对应的普通操作角色管理员操作角色实例级别操作角色集群管理员角色备份与恢复操作角色等权限。

前提条件

  • 数据库类型为MongoDB

  • 您的用户角色为管理员、DBA或普通用户(实例Owner),更多信息,请参见系统角色

  • 已获取目标数据库的数据库账号数据库密码

  • 若您在Admin数据库下创建用户,需保证已有的任一用户具有创建用户的权限(dbAdminAnyDatabase、userAdmin或userAdminAnyDatabase等权限)。编辑用户的操作,请参见编辑或删除用户

创建数据库账号

  1. 登录数据管理DMS 5.0
  2. 登录目标数据库,详情请参见登录数据库

    重要

    对于MongoDB副本集实例,需要登录Primary(主)节点。

  3. 单击首页左侧的数据库实例,在实例列表中右键单击目标实例名称,再单击数据库账号管理

  4. 单击页面左上角的创建数据库账号,配置以下信息。

    1. 设置用户信息。

      image

      配置项目

      说明

      目标库

      下拉选择该用户保存的目标数据库。

      说明
      • 目标库选择为非admin库时,创建的用户为普通用户。

      • 目标库选择为admin库时,创建的用户为高权限用户。

      用户名

      设置用户的名称。

      • 不支持中文。

      • 支持英文、数字和特殊字符。

      • 特殊字符包括:!#$%^&*()_+-=

      密码

      设置用户的密码。

      密码由如下三种字符组成,且长度为8-32位:

      • 英文字母(大小写均可)

      • 数字

      • 特殊字符(!#$%^&*()_+-=

      确认密码

      再次输入密码。

    2. 设置用户的权限信息。

      说明
      • 当目标库选择为admin库时:

        当前库权限页签,可以设置普通操作角色管理员操作角色实例级别操作角色集群管理员角色备份与恢复操作角色超级角色等权限,角色权限详情请参见MongoDB角色权限说明

        也可以选择其他库权限页签,并添加数据库名及设置对应数据库的角色权限。

      • 当目标库选择为非admin库时:

        当前库权限页签,只能设置当前库普通操作角色管理员操作角色,角色权限详情请参见MongoDB角色权限说明

        其他库权限页签的设置权限。

  5. 单击确认

    说明

    管控模式为安全协同的数据库实例会受安全规则限制,如无法执行请根据界面提示信息进行操作,或联系DBA、管理员进行确认。

编辑或删除用户

  1. 登录数据管理DMS 5.0
  2. 在DMS左侧的实例列表中,右键单击目标实例,从弹出的列表中选择数据库账号管理

  3. 数据库账号管理页面,找到目标数据库账号。

  4. 单击右侧的编辑删除,执行相关操作。

MongoDB角色权限说明

角色权限的详情说明请参见MongoDB官网介绍

角色类型

权限

权限说明

普通操作角色

read

查询本库的权限。

readWrite

增删改查本库的权限。

管理员操作角色

dbAdmin

数据库对象的管理操作,但没有数据库的读写权限。

userAdmin

在本库下创建用户的权限。

dbOwner

本库所有操作的权限。

实例级别操作角色

readAnyDatabase

查询本实例所有库的权限。

readWriteAnyDatabase

增删改查本实例所有库的权限。

userAdminAnyDatabase

在本实例所有库下创建用户的权限。

dbAdminAnyDatabase

本实例所有库的dbAdmin权限。

集群管理员角色

hostManager

数据库对象的管理操作,但没有数据库的读写权限。

clusterMonitor

查询集群和复制集的权限。

clusterManager

管理和监控集群和复制集的权限。

clusterAdmin

集群所有操作的权限。

备份与恢复操作角色

backup

查询本实例所有库的权限。

restore

增删改查本实例所有库的权限。

超级角色

Root

超级用户权限。