创建MongoDB实例后,您需要设置MongoDB实例的白名单分组或者或添加ECS安全组,以允许外部设备访问该实例。默认的白名单只包含默认IP地址127.0.0.1,表示任何设备均无法访问该实例。

前提条件

通过ECS安全组设置MongoDB白名单时,要求ECS实例和MongoDB实例的网络类型相同(如果是专有网络,则要求属于同一个VPC ID)。

背景信息

  • 在初次使用目标实例前,需要先设置实例的白名单分组。添加白名单后,实例的基本信息页面和数据库连接页面才可以显示实例的连接地址。
  • 正确使用白名单可以让MongoDB得到高级别的安全保护,建议定期维护白名单。

通过白名单分组设置白名单(单节点、副本集或分片集群实例)

  1. 登录MongoDB管理控制台
  2. 在页面左上角,选择实例所在的资源组和地域。
  3. 根据实例类型,在左侧导航栏单击副本集实例列表分片集群实例列表
  4. 找到目标实例,单击实例ID。
  5. 在左侧导航栏,选择数据安全性 > 白名单设置
  6. 单击操作列的更多,并单击手动修改或者加载ECS内网IP添加来设置IP白名单。
    手动修改
    1. 在右侧弹出的手动修改面板中,根据自身实际网络情况单击IPv4IPv6
      说明
      • IPv4白名单限制:
        • IP地址之间以英文逗号(,)分隔,不可重复,最多1000个。

          支持格式如:0.0.0.0/010.23.12.24(单个IP地址)、10.23.12.24/24CIDR模式,即无类域间路由,/24表示了地址中前缀的长度,范围[1,32])。

        • 0.0.0.0/0或空表示对访问的IP来源不作任何限制,此时MongoDB数据库将面临高安全风险,请谨慎使用。
      • IPv6白名单限制:
        • IP地址之间以英文逗号(,)分隔,不可重复,最多1000个。

          支持格式如:::0:0:0:0:0:0:0:1等。当前仅支持单个IP地址。后续会提供CIDR模式的支持。

        • 设置为::或空表示对访问的IP来源不作任何限制,此时MongoDB数据库将面临高安全风险,请谨慎使用。
        • 当前IPv6白名单模式仅对位于华东1(杭州)区域G可用区中的实例生效。
        • 当前仅云数据库MongoDB版4.2版本实例支持IPv6白名单模式。
      • 单个白名单分组中仅支持设置IPv4白名单或IPv6白名单,无法同时设置。如有需求请分别在不同的白名单分组中设置不同类别的IP地址。
    2. 单击确定
    加载ECS内网IP添加
    1. 单击加载ECS内网IP添加,在弹出对话框中将显示当前阿里云账号下ECS的内网IP,您可以选择所需的IP地址并将其添加到白名单中。
      添加ECS内网IP
    2. 单击确定
      说明 手动添加多个ECS的IP在操作上较为复杂,为提升运维的便捷性您可以通过ECS安全组设置白名单(单节点、副本集或分片集群实例)

通过ECS安全组设置白名单(单节点、副本集或分片集群实例)

为提升运维的便捷性,避免手动添加多个ECS的IP地址,您可以为MongoDB实例绑定ECS安全组实现快速授权。

  1. 登录MongoDB管理控制台
  2. 在页面左上角,选择实例所在的资源组和地域。
  3. 根据实例类型,在左侧导航栏单击副本集实例列表分片集群实例列表
  4. 找到目标实例,单击实例ID。
  5. 在左侧导航栏,选择数据安全性 > 白名单设置
  6. 单击添加安全组
  7. 在弹出的对话框中,选择需要绑定的安全组,然后单击确定
    添加安全组
    说明
    • 每个MongoDB实例可以加入10个安全组。加入后,该安全组中的所有ECS实例既可以通过内网访问MongoDB实例(ECS实例和MongoDB实例的网络类型需相同,如果是专有网络,则要求属于同一个VPC ID),也可以通过外网访问MongoDB实例(MongoDB实例需已申请公网连接地址)。
    • 为便于定位目标安全组,您可以将鼠标指针悬浮在安全组ID上,可显示安全组的名称和描述信息;将鼠标指针悬浮在VPC图标上,可显示VPC ID信息。

删除白名单分组或安全组(单节点、副本集或分片集群实例)

  1. 登录MongoDB管理控制台
  2. 在页面左上角,选择实例所在的资源组和地域。
  3. 根据实例类型,在左侧导航栏单击副本集实例列表分片集群实例列表
  4. 找到目标实例,单击实例ID。
  5. 在左侧导航栏,选择数据安全性 > 白名单设置
  6. 根据要执行的操作,选择下述操作步骤。
    删除白名单分组。
    1. 找到目标白名单分组,单击其操作栏的更多 > 删除白名单分组
      删除白名单分组
      说明 默认的default分组不可被删除。
    2. 在弹出的对话框中,单击确定
    删除安全组。
    1. 单击清空
      清空安全组
    2. 在弹出的对话框中,单击确定

常见的连接场景