設定VPC端點服務連線 - AWS Key Management Service

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

設定VPC端點服務連線

使用本節中的指引來建立和設定使用VPC端點服務連線的外部金鑰存放區所需的 AWS 資源和相關元件。針對此連接選項列出的資源是所有外部金鑰存放區所需資源的補充。建立並設定所需資源後,您可以建立外部金鑰存放區

您可以在 Amazon 中找到外部金鑰存放區代理,VPC或在 Amazon 外部找到代理 AWS ,並使用VPC端點服務進行通訊。

開始之前,請確認您需要外部金鑰存放區。大多數客戶都可以使用KMS金鑰材料支援的 AWS KMS 金鑰。

注意

VPC 端點服務連線所需的一些元素可能會包含在外部金鑰管理器中。此外,您的軟體可能還有其他組態要求。在建立和設定本節中的 AWS 資源之前,請參閱您的代理和金鑰管理員文件。

VPC 端點服務連線需求

如果您選擇外部金鑰存放區的VPC端點服務連線,則需要下列資源。

若要將網路延遲降至最低,請在最接近外部金鑰管理器支援 AWS 區域 中建立 AWS 元件。如果可能,請選擇網路往返時間 (RTT) 為 35 毫秒或更短的區域。

  • 連接至外部金鑰管理器VPC的 Amazon。其在兩個不同可用區域中必須擁有至少兩個私有子網路

    您可以VPC為外部金鑰存放區使用現有的 Amazon,前提是其滿足與外部金鑰存放區搭配使用的要求。多個外部金鑰存放區可以共用 Amazon VPC,但每個外部金鑰存放區都必須有自己的VPC端點服務和私有DNS名稱。

  • Amazon VPC端點服務,由 提供動力 AWS PrivateLink,搭配網路負載平衡器目標群組

    端點服務無法要求接受。此外,您必須新增 AWS KMS 作為允許的主體。這允許 AWS KMS 建立介面端點,以便其與您的外部金鑰存放區代理通訊。

  • 在其 中唯一之VPC端點服務的私有DNS名稱 AWS 區域。

    私有DNS名稱必須是更高層級公有網域的子網域。例如,如果私有DNS名稱為 myproxy-private.xks.example.com,則它必須是公有網域的子網域,例如 xks.example.comexample.com

    您必須驗證私有名稱的網域擁有權。 DNS DNS

  • 由支援的公有TLS憑證授權機構為您的外部金鑰存放區代理發行的憑證。 https://github.com/aws/aws-kms-xksproxy-api-spec/blob/main/TrustedCertificateAuthorities

    TLS 憑證上的主旨一般名稱 (CN) 必須符合私有DNS名稱。例如,如果私有DNS名稱為 myproxy-private.xks.example.com,則TLS憑證上的 CN 必須為 myproxy-private.xks.example.com*.xks.example.com

如需外部金鑰存放區的所有要求,請參閱備妥先決條件

步驟 1:建立 Amazon VPC和子網路

VPC 端點服務連線需要連線至具有至少兩個私有子網路VPC的外部金鑰管理器的 Amazon。您可以建立 Amazon VPC或使用VPC符合外部金鑰存放區需求的現有 Amazon。如需建立新 Amazon 的協助VPC,請參閱 Amazon Virtual Private Cloud 使用者指南 中的建立 VPCAmazon Virtual Private Cloud

Amazon 的需求 VPC

若要使用VPC端點服務連線來使用外部金鑰存放區,Amazon VPC 必須具有下列屬性:

  • 必須與外部金鑰存放區位於相同 AWS 帳戶 且支援的區域中

  • 需要至少兩個私有子網路,每個處於不同的可用區域。

  • Amazon 的私有 IP 地址範圍VPC不得與託管外部金鑰管理器的資料中心的私有 IP 地址範圍重疊。

  • 所有元件都必須使用 IPv4。

您可以將 Amazon VPC連接至外部金鑰存放區代理有許多選項。選擇可滿足您的效能和安全需求的選項。如需清單,請參閱將您的 VPC連線到其他網路Network-to-Amazon VPC連線選項 。如需詳細資訊,請參閱 AWS Direct ConnectAWS Site-to-Site VPN 使用者指南

VPC 為您的外部金鑰存放區建立 Amazon

使用下列指示為您的VPC外部金鑰存放區建立 Amazon。只有在您選擇VPC端點服務連線選項時,才VPC需要 Amazon。您可以使用VPC滿足外部金鑰存放區需求的現有 Amazon。

使用下列必要值,遵循建立 VPC、子網路和其他VPC資源主題中的指示。對於其他欄位,請接受預設值,並按要求提供名稱。

欄位 Value
IPv4 CIDR 區塊 輸入 的 IP 地址VPC。Amazon 的私有 IP 地址範圍VPC不得與託管外部金鑰管理器的資料中心的私有 IP 地址範圍重疊。
可用區域數目 (AZs) 2 或以上
公有子網路數量

需要空值 (0)

私有子網路數量 每個 AZ 一個
NAT 閘道 需要空值。
VPC 端點 需要空值。
啟用DNS主機名稱
啟用DNS解析

請務必測試您的VPC通訊。例如,如果您的外部金鑰存放區代理不在 Amazon 中VPC,請在您的 Amazon 中建立 Amazon EC2執行個體VPC,請確認 Amazon VPC可以與您的外部金鑰存放區代理通訊。

將 VPC連線至外部金鑰管理器

使用 Amazon VPC支援的任何網路連線選項,將 VPC連接至託管外部金鑰管理器的資料中心。確保 中的 Amazon EC2執行個體 VPC(如果位於 ,則為外部金鑰存放區代理VPC) 可以與資料中心和外部金鑰管理員通訊。

步驟 2:建立目標群組

建立所需的VPC端點服務之前,請建立其所需的元件、網路負載平衡器 (NLB) 和目標群組。網路負載平衡器 (NLB) 會在多個運作狀態良好的目標之間分發請求,其中任何一個都可以為請求提供服務。在此步驟中,您會為外部金鑰存放區代理建立至少具有兩個主機的目標群組,並向目標群組註冊 IP 地址。

遵循設定目標群組主題中的指示,使用以下所需值。對於其他欄位,請接受預設值,並按要求提供名稱。

欄位 Value
Target type (目標類型) IP 地址
通訊協定 TCP
連線埠

443

IP 地址類型 IPv4
VPC 選擇您要為外部金鑰存放區建立VPC端點服務的 VPC 。
運作狀態檢查通訊協定和路徑

您的運作狀態檢查通訊協定和路徑會因外部金鑰存放區代理組態而有所不同。請參閱外部金鑰管理器或外部金鑰存放區代理的文件。

如需有關針對目標群組設定運作狀態檢查的一般資訊,請參閱《Network Load Balancer 之 Elastic Load Balancing 使用者指南》中的目標群組運作狀態檢查
網路 其他私有 IP 地址
IPv4 地址 外部金鑰存放區代理的私有地址
連接埠 443

步驟 3:建立網路負載平衡器

網路負載平衡器會將網路流量 (包括從 AWS KMS 到外部金鑰存放區代理的請求) 分佈至設定的目標。

遵循設定負載平衡器和接聽程式主題中的指示,設定和新增接聽程式,並使用下列必要值建立負載平衡器。對於其他欄位,請接受預設值,並按要求提供名稱。

欄位 Value
Scheme 內部 (Internal)
IP 地址類型 IPv4
網路映射

選擇您要為外部金鑰存放區建立VPC端點服務的 VPC 。

映射 選擇您為VPC子網路設定的兩個可用區域 (至少兩個)。驗證子網路名稱和私有 IP 地址。
通訊協定 TCP
連線埠 443
預設動作:轉送至 選擇網路負載平衡器的目標群組

步驟 4:建立VPC端點服務

通常,您會建立服務的端點。不過,當您建立VPC端點服務時,您就是提供者,並為您的服務 AWS KMS 建立端點。對於外部金鑰存放區,使用您在上一個步驟中建立的網路負載平衡器建立VPC端點服務。VPC 端點服務必須與外部金鑰存放區位於相同 AWS 帳戶 且受支援的區域中

多個外部金鑰存放區可以共用 Amazon VPC,但每個外部金鑰存放區都必須有自己的VPC端點服務和私有DNS名稱。

請遵循建立端點服務主題中的指示,使用下列必要值建立VPC端點服務。對於其他欄位,請接受預設值,並按要求提供名稱。

欄位 Value
負載平衡器類型 網路
可用的負載平衡器 選擇您在上一步驟中建立的網路負載平衡器

如果您的新負載平衡器未出現在清單中,請確認它處於作用中狀態。負載平衡器狀態可能需要幾分鐘才能從佈建變更為作用中。

需要接受 False。取消勾選核取方塊。

不需要接受。在沒有手動接受的情況下 AWS KMS ,無法連線至VPC端點服務。如果需要接受,嘗試建立外部金鑰存放區會失敗,並出現 XksProxyInvalidConfigurationException 例外狀況。

啟用私有DNS名稱 將私有DNS名稱與服務建立關聯
私有DNS名稱 在其 中輸入唯一的私有DNS名稱 AWS 區域。

私有DNS名稱必須是更高層級公有網域的子網域。例如,如果私有DNS名稱為 myproxy-private.xks.example.com,則它必須是公有網域的子網域,例如 xks.example.comexample.com

此私有DNS名稱必須與外部金鑰存放區代理上設定之TLS憑證中的主體一般名稱 (CN) 相符。例如,如果私有DNS名稱為 myproxy-private.xks.example.com,則TLS憑證上的 CN 必須為 myproxy-private.xks.example.com*.xks.example.com

如果憑證和私有DNS名稱不相符, 會嘗試將外部金鑰存放區連線至其外部金鑰存放區代理失敗,連線錯誤碼為 XKS_PROXY_INVALID_TLS_CONFIGURATION。如需詳細資訊,請參閱 一般組態錯誤

支援的 IP 地址類型 IPv4

步驟 5:確認您的私有DNS名稱網域

當您建立VPC端點服務時,其網域驗證狀態為 pendingVerification。在使用VPC端點服務建立外部金鑰存放區之前,此狀態必須是 verified。若要驗證您是否擁有與私有DNS名稱相關聯的網域,您必須在公有DNS伺服器中建立TXT記錄。

例如,如果您VPC端點服務的私有DNS名稱為 myproxy-private.xks.example.com,您必須在公有網域中建立TXT記錄,例如 xks.example.comexample.com,以公有網域為準。先在 上尋找記錄,xks.example.com然後在 上 AWS PrivateLink 尋找TXT記錄example.com

提示

新增TXT記錄後,網域驗證狀態值可能需要幾分鐘的時間才能從 變更為 pendingVerification verify

若要開始,請使用下列其中一種方法查找網域的驗證狀態。有效值為 verifiedpendingVerificationfailed

  • Amazon VPC主控台 中,選擇端點服務 ,然後選擇您的端點服務。在詳細資訊窗格中,請查看 Domain verification status (網域驗證狀態)。

  • 使用 DescribeVpcEndpointServiceConfigurations操作。State 值位於 ServiceConfigurations.PrivateDnsNameConfiguration.State 欄位中。

如果驗證狀態不是 verified,請遵循網域擁有權驗證主題中的指示,將TXT記錄新增至網域的DNS伺服器,並確認TXT記錄已發佈。然後再次檢查您的驗證狀態。

您不需要為私有DNS網域名稱建立 A 記錄。將介面端點 AWS KMS 建立到您的VPC端點服務時, AWS PrivateLink 會自動建立託管區域,其中包含 中私有網域名稱所需的 A 記錄 AWS KMS VPC。對於具有VPC端點服務連線的外部金鑰存放區,當您將外部金鑰存放區連接至其外部金鑰存放區代理時,就會發生這種情況。

步驟 6:授權 AWS KMS 連線至VPC端點服務

您必須 AWS KMS 新增至VPC端點服務的允許主體清單。這允許建立端點服務的 AWS KMS 介面VPC端點。如果 AWS KMS 不是允許的主體,則嘗試建立外部金鑰存放區將會失敗,但有XksProxyVpcEndpointServiceNotFoundException例外。

遵循《AWS PrivateLink 指南》中的管理許可主題。使用以下所需值。

欄位 Value
ARN cks.kms.<region>.amazonaws.com

例如 cks.kms.us-east-1.amazonaws.com

下一頁: 建立外部金鑰存放區