

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

# Amazon SQS 中的互联网络流量隐私保护
<a name="sqs-internetwork-traffic-privacy"></a>

Amazon SQS 的 Amazon Virtual Private Cloud (Amazon VPC) 端点是 VPC 内的逻辑实体，仅允许连接到 Amazon SQS。VPC 将请求路由到 Amazon SQS 并将响应路由回 VPC。以下部分提供有关使用 VPC 端点和创建 VPC 端点策略的信息。

## Amazon SQS 的 Amazon Virtual Private Cloud 端点
<a name="sqs-vpc-endpoints"></a>

如果您使用 Amazon VPC 来托管您的 Amazon 资源，则可以在您的 VPC 和亚马逊 SQS 之间建立连接。您可以使用此连接将消息发送到 Amazon SQS 队列，而无需跨公共 Internet。

Amazon VPC 允许您在自定义虚拟网络中启动 Amazon 资源。可以使用 VPC 控制您的网络设置，例如 IP 地址范围、子网、路由表和网络网关。有关更多信息 VPCs，请参阅 *[Amazon VPC 用户指南](https://docs.amazonaws.cn/vpc/latest/userguide/)*。

要将 VPC 连接到 Amazon SQS，您必须先定义一个*接口 VPC 端点*，该端点可让您将 VPC 连接到其他 Amazon 服务。该端点提供了到 Amazon SQS 的可靠、可扩展的连接，无需互联网网关、网络地址转换 (NAT) 实例或 VPN 连接。有关更多信息，请参阅本指南中的[教程：从 Amazon Virtual Private Cloud 将消息发送到 Amazon SQS 队列](sqs-sending-messages-from-vpc.md)和[示例 5：如果不是来自 VPC 端点，则拒绝访问](sqs-creating-custom-policies-access-policy-examples.md#deny-not-from-vpc)，以及《Amazon VPC 用户指南》**中的[接口 VPC 端点 (Amazon PrivateLink)](https://docs.amazonaws.cn/vpc/latest/userguide/vpce-interface.html)。

**重要**  
您只能将 Amazon Virtual Private Cloud 与 HTTPS Amazon SQS 端点一起使用。
当您将 Amazon SQS 配置为从 Amazon VPC 发送消息时，必须启用私有 DNS，并为双栈端点指定格式为 `sqs.us-east-2.amazonaws.com` 或 `sqs.us-east-2.api.aws` 的端点。
Amazon SQS 还通过 PrivateLink 使用终端节点服务支持 FIPS 终端节点。`com.amazonaws.region.sqs-fips`您可以连接到格式为 `sqs-fips.region.amazonaws.com` 的 FIPS 端点。
在 Amazon Virtual Private Cloud 中使用双栈终端节点时，将使用 IPv4 和 IPv6发送请求。
私有 DNS 不支持传统端点，例如 `queue.amazonaws.com` 或 `us-east-2.queue.amazonaws.com`。

## 为 Amazon SQS 创建 Amazon VPC 端点策略
<a name="sqs-vpc-endpoint-policy"></a>

您可以为 Amazon SQS 创建 Amazon VPC 端点策略，在该策略中指定以下内容：
+ 可执行操作的主体。
+ 可执行的操作。
+ 可对其执行操作的资源。

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

以下 VPC 端点策略示例指定允许用户 `MyUser` 将消息发送到 Amazon SQS 队列 `MyQueue`。

```
{
   "Statement": [{
      "Action": ["sqs:SendMessage"],
      "Effect": "Allow",
      "Resource": "arn:aws:sqs:us-east-2:123456789012:MyQueue",
      "Principal": {
        "AWS": "arn:aws:iam:123456789012:user/MyUser"
      }
   }]
}
```

以下各项将被拒绝：
+ 其他 Amazon SQS API 操作，例如 `sqs:CreateQueue` 和 `sqs:DeleteQueue`。
+ 其他尝试使用该 VPC 端点的用户和规则。
+ `MyUser` 将消息发送至不同的 Amazon SQS 队列。

**注意**  
该用户仍然可以从 VPC *外部*使用其他 Amazon SQS API 操作。有关更多信息，请参阅 [示例 5：如果不是来自 VPC 端点，则拒绝访问](sqs-creating-custom-policies-access-policy-examples.md#deny-not-from-vpc)。