Amazon Aurora
Aurora 用户指南 (API 版本 2014-10-31)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

使用安全组控制访问权限

安全组控制着流量在数据库实例内外拥有的访问权限。与 Aurora 配合使用的安全组有两种类型:VPC 安全组及 Amazon EC2 安全组。简单来说,这些安全组的工作方式如下所示:

  • VPC 安全组控制对 VPC 内的数据库实例和 EC2 实例的访问。

  • EC2 安全组控制对 EC2 实例的访问。

默认情况下,对数据库实例禁用网络访问。您可以在安全组中指定规则,允许从 IP 地址范围、端口或 EC2 安全组进行访问。配置传入规则后,与该安全组关联的所有数据库实例将应用这些规则。您最多可以在一个安全组中指定 20 个规则。

VPC 安全组

每个 VPC 安全组规则都允许特定的源访问 VPC 中与此 VPC 安全组关联的数据库实例。源可以是一个地址范围 (例如,203.0.113.0/24) 或另一个 VPC 安全组。指定作为源的 VPC 安全组后,就可以允许从使用此源 VPC 安全组的所有实例 (通常为应用程序服务器) 中传入流量。虽然 VPC 安全组可以具有管理入站和出站流量的规则,但是出站流量规则通常并不适用于数据库实例。仅在数据库实例充当客户端时,出站流量规则才适用。 您必须使用 VPC 控制台中的 Amazon EC2 API安全组选项创建 VPC 安全组。

当您为 VPC 安全组创建允许访问 VPC 中的实例的规则时,必须为规则允许访问的每个地址范围指定一个端口。例如,如果您要对 VPC 中的实例启用 SSH 访问,则为指定地址范围创建一条允许访问 TCP 端口 22 的规则。

您可以为 VPC 中不同的实例配置允许访问不同端口的多个 VPC 安全组。例如,您可以创建一个允许访问您的 VPC 中的 Web 服务器的 TCP 端口 80 的 VPC 安全组。之后,您可以创建另一个允许访问您的 VPC 中的 Aurora MySQL 数据库实例的 TCP 端口 3306 的 VPC 安全组。

注意

在 Aurora 数据库集群中,与数据库集群关联的 VPC 安全组也会与数据库集群中的所有数据库实例关联。如果您更改数据库集群或数据库实例的 VPC 安全组,更改将自动应用于数据库集群中的所有数据库实例。

有关 VPC 安全组的更多信息,请参阅 Amazon Virtual Private Cloud 用户指南中的安全组

安全组情况

VPC 中的数据库实例通常用于与相同 VPC 中运行于 Amazon EC2 实例中的应用程序服务器共享数据,这些数据可通过 VPC 外的客户端应用程序进行访问。对于此情况,使用 AWS 管理控制台上的 RDS 和 VPC 页或 RDS 和 EC2 API 操作来创建必要的实例和安全组:

  1. 创建一个 VPC 安全组 (例如,sg-appsrv1),然后定义使用客户端应用程序 IP 地址作为源的入站规则。通过此安全组,客户端应用程序可连接到使用此安全组的 VPC 中的 EC2 实例。

  2. 创建一个适用于该应用程序的 EC2 实例,然后将该 EC2 实例添加到上一步中创建的 VPC 安全组 (sg-appsrv1)。VPC 中的 EC2 实例与数据库实例共享该 VPC 安全组。

  3. 创建第二个 VPC 安全组 (例如,sg-dbsrv1),然后通过将步骤 1 中创建的 VPC 安全组(sg-appsrv1) 指定为源来创建一个新规则。

  4. 创建一个新数据库实例,然后将该数据库实例添加到上一步骤中创建的 VPC 安全组 (sg-dbsrv1)。在创建数据库实例时,使用的端口号应与为您在步骤 3 中创建的 VPC 安全组 (sg-dbsrv1) 规则指定的端口号相同。

下图说明了此情形。


                    VPC 和 EC2 安全组情况

有关使用 VPC 的更多信息,请参阅 Amazon Virtual Private Cloud VPC 和 Amazon Aurora

创建 VPC 安全组

您可以使用 VPC 控制台为数据库实例创建 VPC 安全组。有关创建安全组的信息,请参阅《Amazon Virtual Private Cloud 用户指南》中的创建安全组以提供 VPC 中的数据库集群的访问权限安全组

将安全组与数据库实例关联

您可以使用 RDS 控制台的修改选项、ModifyDBInstance Amazon RDS API 或 modify-db-instance AWS CLI 命令将安全组与数据库实例关联。

有关修改数据库集群中的数据库实例的信息,请参阅 修改数据库集群中的数据库实例。有关从数据库快照还原数据库实例时的安全组注意事项,请参阅安全组注意事项

将安全组与数据库集群关联

您可以使用 RDS 控制台的修改集群选项、ModifyDBCluster Amazon RDS API 或 modify-db-cluster AWS CLI 命令将安全组与数据库集群关联。

有关修改数据库集群的信息,请参阅修改 Amazon Aurora 数据库集群