Docs 菜单
Docs 主页
/
MongoDB Cloud Manager
/ / /

托管自定义角色

在此页面上

  • Considerations
  • 先决条件
  • 创建自定义 MongoDB 角色
  • 编辑自定义角色
  • 查看角色的权限
  • 删除自定义角色

角色授予用户访问 MongoDB 资源的权限。 默认情况下,MongoDB 提供一些内置角色,但如果这些角色无法描述所需的权限集,您可以创建自定义角色。

创建角色时,请指定角色适用的数据库。 Cloud Manager 将您的自定义角色存储在 Cloud Manager 项目中的所有 MongoDB 实例上,但通过数据库名称和角色名称的组合来唯一标识角色。如果具有该名称的数据库存在于 Cloud Manager 项目内的多个部署中,则该角色将应用于每个数据库。如果在 admin数据库上创建角色,则该角色将应用于部署中的所有admin数据库。

角色由授予对特定资源执行特定操作的访问权限的特权组成。 在大多数数据库上,资源是数据库或collection,但在admin数据库上,资源可以是所有数据库、跨数据库具有给定名称的所有collection或所有部署。

角色可以从其数据库中的其他角色继承权限。admin数据库上的角色可以继承其他数据库中角色的权限。

MongoDB 角色与 Cloud Manager角色是分开的。

您选择在 Cloud Manager 项目中托管的任何用户或角色的 Synced值设置为Yes ,并同步到项目中的所有部署。

您未选择在 Cloud Manager 项目中托管的任何用户或角色的Synced值设置为No ,并且仅存在于各自的 MongoDB 部署中。

注意

如果您在导入后将Synced切换为OFF ,您创建的任何用户或角色都将被删除。

如果您在项目中实施一组一致的用户和角色,Cloud Manager 将在该项目的所有部署中同步这些用户和角色。切换Enforce Consistent Set以选择是否托管一组用户和角色:

在托管项目中,Cloud Manager 会授予所有角色对所有部署的访问权限。所有Cloud Manager经理托管的部署都具有相同的MongoDB用户和角色集。

Cloud Manager 会限制将Synced设置为Yes的用户和角色的访问权限。Cloud Manager 会从项目的部署中删除 Cloud Manager 项目未管理的所有用户和角色。

在托管项目中,Cloud Manager 允许每个部署使用自己的一组 MongoDB 用户和角色。 Cloud Manager 不需要管理这些 MongoDB 用户和角色。 要托管这些用户和角色,您必须直接连接到 MongoDB 部署。

Cloud Manager 向您将Synced设置为Yes的托管 MongoDB 用户和角色授予所有托管部署的访问权限。

Cloud Manager 将非托管 MongoDB 用户和角色(您将Synced设置为No )的访问权限限制为这些用户和角色的特定部署。

注意

Enforce Consistent Set 默认值为 NO

要了解导入 MongoDB 部署对用户和角色管理有何影响,请参阅导入时的自动化和更新的安全设置。

您无法为自动化托管的部署命名自定义角色MongodbAutomationAgentUserRole,因为这是MongoDB Agent的 mms-automation 用户使用的内部角色名称。

必须启用MongoDB 访问控制才能应用角色。 您可以在启用访问控制之前或之后创建角色,但只有在启用访问控制后,角色才会生效。

1
  1. 如果尚未显示,请从导航栏的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。

  3. 如果 Deployment(数据库部署)页面尚未出现,请单击侧边栏中的 Deployment(数据库)。

    显示“部署”页面。

2

单击部署的Security标签页。

显示“安全”页面。

3
4
5

角色适用于定义它的数据库,并且可以授予collection级别的访问权限。角色名称及其数据库的组合唯一标识该角色。 填写Identifier字段,以满足您使用的身份验证和授权方法:

  • 如果您既不使用 LDAP 身份验证,也不使用授权,请在database Identifier字段中键入数据库名称,并在name Identifier字段中键入您想要的角色名称。

  • 如果您使用 LDAP 身份验证,但不使用 LDAP 授权,请在database Identifier字段中键入$external ,并在name Identifier字段中键入您想要的角色名称。

  • 如果您使用任何具有 LDAP 授权的身份验证方法,请在database Identifier字段中键入admin ,并在name Identifier字段中键入 LDAP Group DN。

    例子

    在 LDAP 服务器中,您创建了一个标识名为CN=DBA,CN=Users,DC=example,DC=com的 LDAP 群组。 如果您想在链接到此 LDAP 群组的 Cloud Manager 中创建 DBA 角色,请在database Identifier字段中键入admin ,并在name Identifier字段中键入CN=DBA,CN=Users,DC=example,DC=com

6
7
8
9
10

否则,请单击 Cancel,您可以进行其他更改。

您可以更改自定义角色的权限。 您无法更改其名称或数据库。

1
  1. 如果尚未显示,请从导航栏的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。

  3. 如果 Deployment(数据库部署)页面尚未出现,请单击侧边栏中的 Deployment(数据库)。

    显示“部署”页面。

2

单击部署的Security标签页。

显示“安全”页面。

3
4
5
6
7
8

否则,请单击 Cancel,您可以进行其他更改。

要查看角色的权限:

1
  1. 如果尚未显示,请从导航栏的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。

  3. 如果 Deployment(数据库部署)页面尚未出现,请单击侧边栏中的 Deployment(数据库)。

    显示“部署”页面。

2

单击部署的Security标签页。

显示“安全”页面。

3
  1. 单击 Roles(连接)。

  2. 单击角色旁边的view privileges

每个权限将一个资源与一组权限操作配对。 所有角色都分配有一个数据库。 每个内置角色都分配给admin数据库或每个数据库。

1
  1. 如果尚未显示,请从导航栏的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。

  3. 如果 Deployment(数据库部署)页面尚未出现,请单击侧边栏中的 Deployment(数据库)。

    显示“部署”页面。

2

单击部署的Security标签页。

显示“安全”页面。

3
4
5
6
7

否则,请单击 Cancel,您可以进行其他更改。

后退

托管 MongoDB 用户