

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# API Gateway 中的私有 REST API
<a name="apigateway-private-apis"></a>

私有 API 是只能從 Amazon VPC 內呼叫的 REST API。VPC 會使用[界面 VPC 端點](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html) (也就是您在 VPC 中建立的端點網路介面) 存取您的 API。介面端點採用 AWS PrivateLink技術，可讓您使用私有 IP 地址來私下存取 AWS 服務。

您也可以使用 Direct Connect 建立從內部部署網路到 Amazon VPC 的連線，然後透過該連線存取您的私有 API。在所有情況下，進出您私有 API 的流量都會使用安全連線，並與公有網際網路隔離。流量不會離開 Amazon 網路。

## 私有 API 的最佳實務
<a name="apigateway-private-api-best-practices"></a>

我們建議您在建立私有 API 時使用下列最佳實務：
+ 使用單一 VPC 端點存取多個私有 API。這會使您可能需要的 VPC 端點數量減少。
+ 為您的 VPC 端點與 API 建立關聯。這會建立 Route 53 別名 DNS 記錄，並簡化調用私有 API 的程序。
+ 為您的 VPC 開啟私有 DNS。當您開啟 VPC 的私有 DNS 時，可以在 VPC 內調用 API，而不需傳遞 `Host` 或 `x-apigw-api-id` 標頭。

  如果開啟私有 DNS，則無法存取公有 API 的預設端點。若要存取公有 API 的預設端點，您可以關閉私有 DNS，為 VPC 中的每個私有 API 建立私有託管區域，然後在 Route 53 中佈建所需的記錄。這可讓您的私有 API 進行解析，同時仍然可以從 VPC 調用公有預設端點。如需詳細資訊，請參閱[建立私有託管區域](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zone-private-creating.html)。
+ 限制對特定 VPC 或 VPC 端點的私有 API 存取權。將 `aws:SourceVpc` 或 `aws:SourceVpce` 條件新增至 API 的資源政策以限制存取。
+ 對於最安全的資料周邊，您可以建立 VPC 端點政策。這會控制可調用私有 API 的 VPC 端點存取權。

## 私有 API 的考量事項
<a name="apigateway-private-api-considerations"></a>

下列考量事項可能會影響您使用私有 API：
+ 僅支援 REST API。
+ 您不能將私有 API 轉換為邊緣最佳化 API。
+ 私有 API 僅支援 TLS 1.2。不支援舊版 TLS。
+ 如果您使用 HTTP/2 通訊協定提出請求，則會強制該請求使用 HTTP/1.1 通訊協定。
+ 您無法將私有 API 的 IP 位址類型設定為僅允許 IPv4 位址調用您的私有 API。僅支援雙堆疊。如需詳細資訊，請參閱[API Gateway 中 REST API 的 IP 位址類型](api-gateway-ip-address-type.md)。
+ 若要使用私有 API 來傳送流量，您可以使用 Amazon VPC 支援的所有 IP 位址類型。您可以在 VPC 端點上配置設定值，以傳送雙堆疊和 IPv6 流量。您無法使用 API Gateway 修改此項目。如需詳細資訊，請參閱[新增 VPC 的 IPv6 支援](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-migrate-ipv6-add.html)。
+ 私有 API 的 VPC 端點會受到與其他界面 VPC 端點相同的限制。如需詳細資訊，請參閱《 *AWS PrivateLink 指南*》中的[使用介面 VPC 端點存取 AWS 服務](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html)。如需將 API Gateway 與共用 VPC 和共用子網路搭配使用的詳細資訊，請參閱《*AWS PrivateLink  指南*》中的[共用子網路](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#interface-endpoint-shared-subnets)。

## 私有 API 的後續步驟
<a name="apigateway-private-api-next-steps"></a>

 若要了解如何建立私有 API 和建立 VPC 端點關聯，請參閱 [建立私有 API](apigateway-private-api-create.md)。若要遵循您在 中建立相依性的教學課程， CloudFormation 以及在 中建立私有 API AWS 管理主控台，請參閱 [教學：建立私有 REST API](private-api-tutorial.md)。