

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# MemoryDB API 和接口 VPC 端点（AWS PrivateLink）
<a name="memorydb-privatelink"></a>

您可以通过创建*接口 VPC 端点*，从而在 VPC 和 Amazon MemoryDB API 端点之间建立私有连接。接口端点由提供支持[AWS PrivateLink](https://aws.amazon.com/privatelink)。 AWS PrivateLink 允许您在没有互联网网关、NAT 设备、VPN 连接或 Direct AWS Connect 连接的情况下私密访问 MemoryDB API 操作。

VPC 中的实例不需要公有 IP 地址便可与 MemoryDB 端点进行通信。您的实例也不需要公有 IP 地址即可使用任何可用的 MemoryDB API 操作。您的 VPC 和 MemoryDB 之间的流量不会脱离 Amazon 网络。每个接口终端节点均由子网中的一个或多个弹性网络接口表示。有关弹性网络接口的更多信息，请参阅*《Amazon EC2 用户指南》*中的[弹性网络接口](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html)。
+ 有关 VPC 终端节点的更多信息，请参阅 *Amazon VPC 用户指南中的接口 VPC* [终端节点 (AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html)。
+ 有关 MemoryDB API 操作的更多信息，请参阅 [MemoryDB API 操作](https://docs.aws.amazon.com/memorydb/latest/APIReference/Welcome.html)。

创建接口 VPC 终端节点后，如果您为该终端节点启用[私有 DNS](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html#vpce-private-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)](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html)。MemoryDB 支持调用您的 VPC 中的[所有 API 操作](https://docs.aws.amazon.com/memorydb/latest/APIReference/API_Operations.html)。

**注意**  
只能为 VPC 中的一个 VPC 端点启用私有 DNS 主机名。如果要创建额外的 VPC 端点，则应为其禁用私有 DNS 主机名。

## VPC 端点注意事项
<a name="memorydb-privatelink-considerations"></a>

在为 MemoryDB API 端点设置接口 VPC 端点之前，请务必查看《Amazon VPC 用户指南》**中的[接口端点属性和限制](https://docs.aws.amazon.com/vpc/latest/privatelink/endpoint-services-overview.html)。可以从使用 AWS PrivateLink的 VPC 中获取所有与管理 MemoryDB 资源相关的 MemoryDB API 操作。MemoryDB API 端点支持 VPC 端点策略。默认情况下，允许通过端点对 MemoryDB API 操作进行完全访问。有关更多信息，请参阅《Amazon VPC User Guide》**中的 [Controlling access to services with VPC endpoints](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-access.html)。

### 为 MemoryDB API 创建接口 VPC 端点
<a name="memorydb-privatelink-create-vpc-endpoint"></a>

您可以使用 Amazon VPC 控制台或 AWS CLI为 MemoryDB API 创建 VPC 端点。有关更多信息，请参阅《Amazon VPC User Guide》**中的 [Creating an interface endpoint](https://docs.aws.amazon.com/vpc/latest/privatelink/create-endpoint-service.html)。

 在创建接口 VPC 端点后，您可以为端点启用私有 DNS 主机名。当你这样做时，默认的 MemoryDB 端点 (https://memorydb。 *Region*.amazonaws.com) 解析到您的 VPC 终端节点。有关更多信息，请参阅《Amazon VPC 用户指南》**中的[通过接口端点访问服务](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html#access-service-though-endpoint)。

### 为 Amazon MemoryDB API 创建 VPC 端点策略
<a name="memorydb-privatelink-policy"></a>

您可以为 VPC 端点附加控制对 MemoryDB API 的访问的端点策略。此策略指定以下内容：
+ 可执行操作的主体。
+ 可执行的操作。
+ 可对其执行操作的资源。

有关更多信息，请参阅《Amazon VPC 用户指南》**中的[使用 VPC 端点控制对服务的访问](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-access.html)。

**Example MemoryDB API 操作的 VPC 端点策略**  
下面是用于 MemoryDB API 的端点策略示例。当附加到端点时，此策略会向所有委托人授予对列出的针对所有资源的 MemoryDB API 操作的访问权限。  

```
{
	"Statement": [{
		"Principal": "*",
		"Effect": "Allow",
		"Action": [
			"memorydb:CreateCluster",
			"memorydb:UpdateCluster",
			"memorydb:CreateSnapshot"
		],
		"Resource": "*"
	}]
}
```

**Example 拒绝来自指定 AWS 账户的所有访问的 VPC 终端节点策略**  
以下 VPC 终端节点策略拒绝 AWS 账户使用该终端节点访问*123456789012*所有资源。此策略允许来自其他账户的所有操作。  

```
{
	"Statement": [{
			"Action": "*",
			"Effect": "Allow",
			"Resource": "*",
			"Principal": "*"
		},
		{
			"Action": "*",
			"Effect": "Deny",
			"Resource": "*",
			"Principal": {
				"AWS": [
					"123456789012"
				]
			}
		}
	]
}
```