本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
您可以通过创建接口 VPC 端点,从而在 VPC 和 Amazon MemoryDB API 端点之间建立私有连接。接口端点由提供支持AWS PrivateLink
VPC 中的实例不需要公有 IP 地址便可与 MemoryDB 端点进行通信。您的实例也不需要公有 IP 地址即可使用任何可用的 MemoryDB API 操作。您的 VPC 和 MemoryDB 之间的流量不会脱离 Amazon 网络。每个接口端点均由子网中的一个或多个弹性网络接口表示。有关弹性网络接口的更多信息,请参阅 Amazon EC2 用户指南中的弹性网络接口。
-
有关 VPC 终端节点的更多信息,请参阅 Amazon VPC 用户指南中的接口 VPC 终端节点 (AWS PrivateLink)。
-
有关 MemoryDB API 操作的更多信息,请参阅 MemoryDB API 操作。
创建接口 VPC 终端节点后,如果您为该终端节点启用私有 DNS 主机名,则为默认 MemoryDB 终端节点 (https://memorydb。 Region
.amazonaws.com) 解析到您的 VPC 终端节点。如果您尚未启用私有 DNS 主机名,则 Amazon VPC 将提供一个您可以使用的 DNS 端点名称,格式如下:
VPC_Endpoint_ID.memorydb.Region.vpce.amazonaws.com
有关更多信息,请参阅 Amazon VPC 用户指南中的接口 VPC 端点 (AWS PrivateLink)。MemoryDB 支持调用您的 VPC 中的所有 API 操作。
注意
只能为 VPC 中的一个 VPC 端点启用私有 DNS 主机名。如果要创建额外的 VPC 端点,则应为其禁用私有 DNS 主机名。
VPC 端点注意事项
在为 MemoryDB API 端点设置接口 VPC 端点之前,请务必查看《Amazon VPC 用户指南》中的接口端点属性和限制。可以从使用 AWS PrivateLink的 VPC 中获取所有与管理 MemoryDB 资源相关的 MemoryDB API 操作。MemoryDB API 端点支持 VPC 端点策略。默认情况下,允许通过端点对 MemoryDB API 操作进行完全访问。有关更多信息,请参阅《Amazon VPC User Guide》中的 Controlling access to services with VPC endpoints。
为 MemoryDB API 创建接口 VPC 端点
您可以使用 Amazon VPC 控制台或 AWS CLI为 MemoryDB API 创建 VPC 端点。有关更多信息,请参阅《Amazon VPC User Guide》中的 Creating an interface endpoint。
在创建接口 VPC 终端节点后,您可以为端点启用私有 DNS 主机名。当你这样做时,默认的 MemoryDB 端点 (https://memorydb。 Region
.amazonaws.com) 解析到您的 VPC 终端节点。有关更多信息,请参阅《Amazon VPC 用户指南》中的通过接口端点访问服务。
为 Amazon MemoryDB API 创建 VPC 端点策略
您可以为 VPC 端点附加控制对 MemoryDB API 的访问的端点策略。此策略指定以下内容:
-
可执行操作的主体。
-
可执行的操作。
-
可对其执行操作的资源。
有关更多信息,请参阅《Amazon VPC 用户指南》中的使用 VPC 端点控制对服务的访问。
例 MemoryDB API 操作的 VPC 端点策略
下面是用于 MemoryDB API 的端点策略示例。当附加到端点时,此策略会向所有委托人授予对列出的针对所有资源的 MemoryDB API 操作的访问权限。
{
"Statement": [{
"Principal": "*",
"Effect": "Allow",
"Action": [
"memorydb:CreateCluster",
"memorydb:UpdateCluster",
"memorydb:CreateSnapshot"
],
"Resource": "*"
}]
}
例 拒绝来自指定 AWS 账户的所有访问的 VPC 终端节点策略
以下 VPC 终端节点策略拒绝 AWS 账户使用该终端节点访问123456789012
所有资源。此策略允许来自其他账户的所有操作。
{
"Statement": [{
"Action": "*",
"Effect": "Allow",
"Resource": "*",
"Principal": "*"
},
{
"Action": "*",
"Effect": "Deny",
"Resource": "*",
"Principal": {
"AWS": [
"123456789012"
]
}
}
]
}