全部产品
Search
文档中心

云数据库 MongoDB:修改白名单

更新时间:Sep 23, 2026

为保障MongoDB数据库的安全稳定,系统默认任何设备均无法访问云数据库MongoDB实例(默认IP地址为127.0.0.1),所以在使用云数据库MongoDB实例前,您需要为实例设置白名单,以允许外部设备访问该实例。正确使用白名单可以使云数据库MongoDB实例得到更高级别的安全保护,建议您定期维护白名单。

背景信息

  • 在初次使用目标实例前,需要先为实例添加白名单分组。

  • 添加白名单后,实例的基本信息页面和数据库连接页面才可以显示实例的连接地址。

操作步骤

  1. 登录MongoDB管理控制台。

  2. 根据实例类型,在左侧导航栏,单击副本集实例列表或分片集群实例列表。

  3. 在页面左上角,选择实例所在的资源组和地域。

  4. 单击目标实例ID或目标实例所在行操作列的管理。

  5. 在目标实例页面的左侧导航栏,单击数据安全性 > 白名单设置。

  6. 在白名单设置区域,选择以下任意一种方法为实例修改白名单。

    手动修改

    1. 根据实例类型,在目标分组操作列单击对应按钮:

      • 副本集实例:单击修改。

      • 分片集群实例:单击手动修改。

    2. 在手动修改面板的允许访问IP名单输入框中输入IP地址或IP地址段。

      • 支持如下格式的IP地址或IP地址段。

        • 单个IP地址,例如10.23.12.24。

        • 0.0.0.0/0

          警告

          设置为0.0.0.0/0表示对访问的IP地址来源不作任何限制,此时云数据库MongoDB数据库将面临高安全风险,请谨慎使用。

        • CIDR模式,即无类域间路由。例如10.23.12.24/24,其中/24表示了地址中前缀的长度,范围[1,32]。

      • 多个IP地址或IP地址段之间以英文逗号(,)分隔。

    3. 单击确定。

    加载ECS内网IP

    1. 单击目标分组操作列的加载ECS内网IP。

    2. 在加载ECS内网IP添加面板的允许访问IP名单列表中,选中需要添加的ECS内网IP地址。

    3. 单击添加。

    4. 单击确定

常见问题

为什么已经将本地设备的公网IP添加至白名单了,但仍然无法连接MongoDB?

可能是您获取到的公网IP地址不正确导致无法连接MongoDB,您可以通过如下步骤定位您本地设备的公网IP:

  1. 将IP地址0.0.0.0/0添加到MongoDB实例的白名单。

    警告

    0.0.0.0/0表示允许任何设备访问MongoDB实例,有安全风险,请谨慎使用。如果使用,应当及时从白名单中删除。

  2. 通过Mongo Shell登录MongoDB实例。

    如果白名单设置为0.0.0.0/0后依旧无法连接MongoDB,可以尝试通过DMS连接MongoDB,检查账号密码以及鉴权数据库是否正确。

  3. 执行以下命令查询Mongo Shell登录的客户端信息。

    db.currentOp({"appName" : "MongoDB Shell","active" : true})

    命令执行后,返回结果中 client 字段即为客户端 IP 地址。

    mgset-xxx:PRIMARY> db.currentOp({"appName" : "MongoDB Shell","active" : true})
    {
        "inprog" : [
            {
                "desc" : "conn1591052",
                "threadId" : "48008022501120",
                "connectionId" : 1591052,
                "client" : "47.xxx.xxx.xxx:40602",
                "appName" : "MongoDB Shell",
                "clientMetadata" : {
                    "application" : {
                        "name" : "MongoDB Shell"
                    },
                    "driver" : {
                        "name" : "MongoDB Internal Client",
                        "version" : "4.0.5"
                    },
                    "os" : {
                        "type" : "Linux",
                        "name" : "Ubuntu",
                        "architecture" : "x86_64",
                        "version" : "16.04"
                    }
                },
                "active" : true,
                ...
            }
        ],
        ...
    }
    说明

    如果通过其他方式登录MongoDB实例,您可通过下述命令查询所有客户端信息。

    db.runCommand({currentOp: 1, "active" : true})
  4. 将获取到的IP地址加入至MongoDB实例白名单中,并将IP地址0.0.0.0/0删除。

白名单设置正确,为什么仍然无法连接实例?

请确认网络环境与实例连接地址是否正确。云数据库MongoDB支持私网和公网两种连接方式,不同网络环境需使用不同的连接地址。

其他排查与解决方法,请参见连接访问与网络。

客户端IP动态变化,如何设置白名单?

客户端IP不固定时,您可以在本地客户端通过SSL-VPN隧道连接MongoDB,或者将客户端所属的IP网段加入白名单。

重要

将客户端所属的IP网段加入白名单时,请根据实际需求最小化网段范围,降低安全风险。