

AWS App Runner 不再向新客户开放。现有客户可以继续正常使用该服务。有关更多信息，请参阅 [AWS App Runner 可用性变更](https://docs.aws.amazon.com/apprunner/latest/dg/apprunner-availability-change.html)。

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

# 在 VPC 终端节点上使用应用程序运行器
<a name="security-vpce"></a>

您的 AWS 应用程序可能会将 AWS App Runner 服务与在[亚马逊虚拟私 AWS 服务 有云（亚马逊](https://docs.aws.amazon.com/vpc/latest/userguide/) VPC）的 VPC 中运行的其他服务集成。您的部分应用程序可能会从 VPC 内部向 App Runner 发出请求。例如，您可以使用持续部署 AWS CodePipeline 到您的 App Runner 服务。提高应用程序安全性的一种方法是通过 VPC 终端节点将这些 App Runner 请求（以及向其他用户发送请求 AWS 服务）。

使用 *VPC 终端节点*，您可以私密地将您的 VPC 连接到支持的 VPC 终端节点服务 AWS 服务 以及由其提供支持的 VPC 终端节点服务 AWS PrivateLink。您不需要互联网网关、NAT 设备、VPN 连接或 Direct Connect 连接。

您的 VPC 中的资源不使用公有 IP 地址与 App Runner 资源进行交互。您的 VPC 和 App Runner 之间的流量不会离开亚马逊网络。有关 VPC 终端节点的更多信息，请参阅*AWS PrivateLink 指南*[中的 VPC 终端节点](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints.html)。

**注意**  
默认情况下，您的 App Runner 服务中的 Web 应用程序在 App Runner 提供和配置的 VPC 中运行。此 VPC 是公有的。这意味着它已连接到互联网。您可以选择将您的应用程序与自定义 VPC 关联。有关更多信息，请参阅 [为出站流量启用 VPC 访问权限](network-vpc.md)。  
您可以将服务配置为访问互联网 AWS APIs，包括即使您的服务已连接到 VPC。有关如何为 VPC 出站流量启用公共互联网访问的说明，请参阅[选择子网时的注意事项](network-vpc.md#network-vpc.considerations-subnet)。  
App Runner 不支持为您的应用程序创建 VPC 终端节点。

## 为 App Runner 设置 VPC 终端节点
<a name="security-vpce.setup"></a>

要在您的 VPC 中为 App Runner 服务创建接口 VPC 终端节点，请按照*AWS PrivateLink 指南*中的[创建接口终端节点](https://docs.aws.amazon.com/vpc/latest/privatelink/vpce-interface.html#create-interface-endpoint)过程进行操作。对于**服务名称**，选择 `com.amazonaws.{{region}}.apprunner`。

## VPC 网络隐私注意事项
<a name="security-vpce.private"></a>

**重要**  
在 App Runner 上使用 VPC 终端节点并不能确保来自你的 VPC 的所有流量都不会进入互联网。VPC 可能是公共的。此外，您的解决方案的某些部分可能不使用 VPC 终端节点发出 AWS API 调用。例如， AWS 服务 可能会使用其公共终端节点调用其他服务。如果您的 VPC 中的解决方案需要流量隐私，请阅读本节。

为确保您的 VPC 中网络流量的隐私，请考虑以下事项：
+ *启用 DNS 名称* — 应用程序的某些部分仍可能使用`apprunner.{{region}}.amazonaws.com`公共终端节点通过互联网向 App Runner 发送请求。如果您的 VPC 配置了互联网访问权限，则这些请求会成功，而不会向您发出任何指示。您可以通过确保在创建终端节点时启用 “启用 **DNS 名称**” 来防止这种情况。默认情况下，它设置为 true。这会在您的 VPC 中添加一个 DNS 条目，该条目将公有服务终端节点映射到接口 VPC 终端节点。
+ *为其他服务配置 VPC 终端节点*-您的解决方案可能会向其他人发送请求 AWS 服务。例如， AWS CodePipeline 可能会向发送请求 AWS CodeBuild。为这些服务配置 VPC 终端节点，并在这些终端节点上启用 DNS 名称。
+ *配置私有 VPC* — 如果可能（如果您的解决方案根本不需要访问互联网），请将您的 VPC 设置为私有，这意味着它没有互联网连接。这样可以确保丢失的 VPC 终端节点会导致明显的错误，这样您就可以添加缺失的终端节点。

## 使用终端节点策略控制通过 VPC 终端节点进行的访问
<a name="security-vpce.policy"></a>

 App Runner 支持 VPC 终端节点策略。默认情况下，允许通过接口端点对 App Runner 进行完全访问。VPC 终端节点策略可用于控制哪些 AWS 委托人可以访问 App Runner 终端节点。或者，您可以将安全组与端点网络接口关联，以控制通过接口终端节点流向 App Runner 的流量。

## 与接口端点集成
<a name="security-vpce.pl-integration"></a>

App Runner 支持 AWS PrivateLink，它提供与 App Runner 的私有连接，并消除了互联网流量的暴露。要使您的应用程序能够使用向 App Runner 发送请求 AWS PrivateLink，请配置一种称为*接口终端节点的 VPC 终端节点*。有关更多信息，请参阅 *AWS PrivateLink 指南*中的[接口 VPC 端点 (AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/privatelink/vpce-interface.html)。