為傳入流量啟用私有端點 - AWS App Runner

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

為傳入流量啟用私有端點

根據預設,當您建立 AWS App Runner 服務時,可透過網際網路存取該服務。但是,您也可以將應用程序運行器服務設為私有,並且只能從 Amazon Virtual Private Cloud(Amazon VPC)中訪問。

使用您的 App Runner 服務私有,您可以完全控制傳入流量,從而增加了一層安全性。這在各種使用案例中很有幫助,包括執行內部 API、企業 Web 應用程式或仍在開發中的應用程式,這些應用程式需要更高層級的隱私權和安全性,或者需要符合特定合規性需求。

注意

如果您的應用程式執行器應用程式需要來源 IP/CIDR 傳入流量控制規則,您必須針對私有端點使用安全群組規則,而不是 WAF Web ACL。這是因為我們目前不支援將要求來源 IP 資料轉送至與 WAF 相關聯的 App Runner 私人服務。因此,與 WAF Web ACL 相關聯的應用程式執行器私有服務的來源 IP 規則不會遵守 IP 型規則。

若要進一步了解基礎設施安全和安全群組 (包括最佳實務),請參閱 Amazon VPC 使用者指南中的以下主題:使用安全群組控制網路流量和控制 AWS 資源的流量。

當您的應用程式執行器服務是私有的時候,您可以從 Amazon VPC 中存取您的服務。不需要網際網路閘道、NAT 裝置或 VPN 連線。

注意

應用程式執行器目前僅支援用傳入流量的雙堆疊 (IPv4 和 IPv6) 位址類型。對於傳出流量私人傳入流量,僅支援 IPv4。

考量事項

  • 在為 App Runner 設定 VPC 介面端點之前,請先檢閱AWS PrivateLink 指南中的考量事項

  • 應用程式執行器不支援 VPC 端點原則。默認情況下,允許通過 VPC 界面端點對應用程序運行器的完全訪問。或者,您可以將安全群組與端點網路介面相關聯,以控制透過 VPC 介面端點傳送至 App Runner 的流量。

  • 如果您的應用程式執行器應用程式需要來源 IP/CIDR 傳入流量控制規則,您必須針對私有端點使用安全群組規則,而不是 WAF Web ACL。這是因為我們目前不支援將要求來源 IP 資料轉送至與 WAF 相關聯的 App Runner 私人服務。因此,與 WAF Web ACL 相關聯的應用程式執行器私有服務的來源 IP 規則不會遵守 IP 型規則。

  • 啟用私有端點後,您的服務只能從 VPC 存取,而且無法從網際網路存取。

  • 為了獲得更高的可用性,建議您為 VPC 介面端點在可用區域中選取至少兩個不同的子網路。我們不建議只使用一個子網路。

  • 您可以使用相同的 VPC 介面端點存取 VPC 中的多個應用程式執行器服務。

如需本節所使用術語的詳細資訊,請參閱術語

許可

以下是啟用私有端點所需的權限清單:

  • ec2:CreateTags

  • ec2:CreateVpcEndpoint

  • ec2:ModifyVpcEndpoint

  • ec2:DeleteVpcEndpoints

  • ec2:DescribeSubnets

  • ec2:DescribeVpcEndpoints

  • ec2:DescribeVpcs

VPC 介面端點

虛擬私人雲端介面端點是將 Amazon VPC 連接到端點服務的AWS PrivateLink資源。您可以透過傳遞 VPC 介面端點來指定要存取應用程式執行器服務的 Amazon VPC。若要建立 VPC 介面端點,請指定下列項目:

  • Amazon VPC 以啟用連接。

  • 新增安全性群組。依預設,會將安全群組指派給 VPC 介面端點。您可以選擇關聯自訂安全性群組,以進一步控制內送網路流量。

  • 新增子網路。為了確保更高的可用性,建議您從中存取 App Runner 服務的每個可用區域選取至少兩個子網路。網路介面端點會在您為 VPC 介面端點啟用的每個子網路中建立。這些是由請求者管理的網路介面,可做為流量進入 App Runner 的進入點。申請者受管的網路介面是 AWS 服務代表您在您的 VPC 中建立的網路介面。

  • 如果您使用的是 API,請新增應用程式執行器 VPC 介面端點Servicename。例如

    com.amazonaws.region.apprunner.requests

您可以使用下列其中一項 AWS 服務建立 VPC 介面端點:

注意

根據AWS PrivateLink 定價為您使用的每個 VPC 介面端點收費。因此,為了提高成本效益,您可以使用相同的 VPC 介面端點來存取 VPC 中的多個 App Runner 服務。但是,為了更好地隔離,請考慮為每個 App Runner 服務關聯不同的 VPC 界面端點。

VPC Ingress Connection

VPC 入口連線是一種應用程式執行器資源,可為傳入流量指定應用程式執行器端點。當您在 App Runner 主控台上為傳入流量選擇私人端點時,應用程式執行器會在幕後指派 VPC 入口連線資源。選擇此選項可僅允許來自 Amazon VPC 的流量存取您的應用程式執行器服務。VPC 入口連線資源會將您的應用程式執行器服務連線到 Amazon VPC 的 VPC 介面端點。只有在使用 API 作業設定傳入流量的網路設定時,才能建立 VPC 輸入連線資源。如需如何建立 VPC 輸入連線資源的詳細資訊,請參閱 AWS App Runner API 參考資料CreateVpcIngressConnection中的。

注意

應用程式執行器的一個 VPC 入口連線資源可以連接到 Amazon VPC 的一個 VPC 介面端點。此外,您只能為每個應用程式執行器服務建立一個 VPC 入口連線資源。

私有端點

私有端點是應用程式執行器主控台選項,您可以選擇是否只想從 Amazon VPC 接收傳入流量。在 App Runner 主控台上選擇私有端點選項,可讓您選擇透過設定其 VPC 介面端點,將服務連線到 VPC。在幕後,應用程式執行器會將 VPC 輸入連線資源指派給您設定的 VPC 介面端點。

注意

私人端點僅支援 IPv4 網路流量。

Summary

只允許來自 Amazon VPC 的流量存取您的應用程式執行器服務,將您的服務設為私有。為了實現這一目標,您可以使用應用程式執行器或 Amazon VPC 為所選 Amazon VPC 建立 VPC 界面端點。在 App Runner 主控台上,當您為內送流量啟用私人端點時,可以建立 VPC 介面端點。然後,應用程式執行器會自動建立 VPC 入口連線資源,並連線至 VPC 介面端點和您的應用程式執行器服務。這會建立私人服務連線,以確保只有來自所選 VPC 的流量才能存取您的 App Runner 服務。