如何设置云数据库RDS白名单

应用在Serverless 应用引擎 SAE(Serverless App Engine)托管后,如果您需要访问云数据库 RDS(ApsaraDB RDS),需要为应用设置RDS白名单。本文以RDS MySQL实例为例,介绍如何在不同场景下设置RDS IP白名单。

前提条件

背景信息

RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎。更多信息,请参见云数据库RDS简介

场景一:应用访问本VPC内的RDS数据库

  1. 获取SAE应用的VPC和vSwitch的IP地址。

    1. 登录SAE控制台

    2. 在左侧导航栏,选择应用管理 > 应用列表,在顶部菜单栏选择地域,然后单击具体应用名称。

    3. 获取IP地址。

      • VPC:在基本信息页签的应用信息区域内,单击VPC名称,跳转至专有网络管理控制台,然后在基本信息页签,复制并保存IPv4网段

      • vSwitch:在基本信息页签的应用信息区域内,单击vSwitch名称,跳转至专有网络管理控制台,然后在交换机基本信息页面,复制并保存IPv4网段

  2. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。

  3. 在左侧导航栏中,单击白名单与安全组

  4. 确认IP白名单模式。

    说明

    版本为MySQL 5.1、5.5、5.6、5.7,存储类型为本地SSD盘的实例可以切换为高安全模式。其他版本的实例都采用通用模式。

  5. 单击default分组右侧的修改,在弹出的修改白名单分组对话框中,将步骤1复制的VPC和vSwitch的IP地址配置在白名单中,然后单击确定db_configure_a_whitelist_for_RDS_instances

    说明
    • 单个实例最多添加1000个IP地址或IP段,以英文逗号分隔多个IP地址,且逗号前后不能有空格。

    • 如有需要,您也可以单击添加白名单分组,并自定义一个分组名称。

    完成配置后,您部署在SAE上的应用便可访问本VPC内的RDS数据库。

场景二:应用跨VPC或跨地域访问RDS数据库

不同VPC和不同地域之间属于完全的逻辑隔离,故常规情况下不能跨VPC和跨地域访问RDS数据库。若您的应用想跨VPC或跨地域访问RDS数据库,请按照下面步骤进行相关配置。

  1. 获取SAE应用的弹性公网IP和vSwitch的IP地址。

    1. 登录SAE控制台

    2. 在左侧导航栏,选择应用管理 > 应用列表,在顶部菜单栏选择地域,然后单击具体应用名称。

    3. 基本信息页签的应用信息区域内,单击vSwitch名称,跳转至专有网络管理控制台,然后在交换机基本信息页面,复制并保存IPv4网段

    4. 在左侧导航栏选择NAT网关 > 公网NAT网关

    5. 公网NAT网关页面,复制并保存目标实例的弹性公网IP

  2. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。

  3. 在左侧导航栏中,单击白名单与安全组

  4. 确认IP白名单模式。

    说明

    版本为MySQL 5.1、5.5、5.6、5.7,存储类型为本地SSD盘的实例可以切换为高安全模式。其他版本的实例都采用通用模式。

  5. 单击default分组右侧的修改,在弹出的修改白名单分组对话框中,将步骤1复制的弹性公网IP和vSwitch的IP地址配置在白名单中,然后单击确定db_configure_a_whitelist_for_RDS_instances_cross_vpc_or_region

    说明
    • 单个实例最多添加1000个IP地址或IP段,以英文逗号分隔多个IP地址,且逗号前后不能有空格。

    • 如有需要,您也可以单击添加白名单分组,并自定义一个分组名称。

    完成配置后,您部署在SAE上的应用便可跨VPC、跨地域访问RDS数据库。

更多信息

除为IP地址添加白名单的方式外,您还可以通过添加安全组的方式来访问RDS数据库。具体信息,请参见以下文档:

常见问题

SAE应用无法访问RDS、Redis等怎么办?