

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

# VPC Lattice 中的服務
<a name="services"></a>

VPC Lattice 內的服務是可獨立部署的軟體單位，可提供特定的任務或函數。服務可以在執行個體、容器或 帳戶或虛擬私有雲端 (VPC) 內的無伺服器函數上執行。服務有一個接聽程式，使用稱為接聽程式規則的規則，您可以設定這些規則來協助將流量路由到目標。支援的目標類型包括 EC2 執行個體、IP 地址、Lambda 函數、Application Load Balancer、Amazon ECS 任務和 Kubernetes Pod。如需詳細資訊，請參閱[VPC Lattice 中的目標群組](target-groups.md)。您可以將服務與多個服務網路建立關聯。下圖顯示 VPC Lattice 中典型服務的關鍵元件。

![\[具有接聽程式、接聽程式規則和兩個目標群組的服務。\]](http://docs.aws.amazon.com/zh_tw/vpc-lattice/latest/ug/images/service.png)


您可以透過提供服務名稱和描述來建立服務。不過，若要控制和監控您服務的流量，請務必包含存取設定和監控詳細資訊。若要將流量從服務傳送到目標，您必須設定接聽程式並設定規則。若要允許流量從服務網路流向您的服務，您必須將服務與服務網路建立關聯。

與目標的連線有閒置逾時和整體連線逾時。閒置連線逾時為 1 分鐘，之後我們會關閉連線。最長持續時間為 10 分鐘，之後我們不允許透過連線進行新的串流，並開始關閉現有串流的程序。

**Topics**
+ [步驟 1：建立 VPC Lattice 服務](#create-service)
+ [步驟 2：定義路由](#define-routing)
+ [步驟 3：建立網路關聯](#associate-to-networks)
+ [步驟 4：檢閱和建立](#review-and-create)
+ [管理關聯](service-associations.md)
+ [編輯存取設定](service-access.md)
+ [編輯監控詳細資訊](service-monitoring.md)
+ [管理標籤](service-tags.md)
+ [設定自訂網域名稱](service-custom-domain-name.md)
+ [BYOC](service-byoc.md)
+ [刪除服務](delete-service.md)

## 步驟 1：建立 VPC Lattice 服務
<a name="create-service"></a>

使用存取設定和監控詳細資訊建立基本 VPC Lattice 服務。不過，除非您定義其路由組態並將其與服務網路建立關聯，否則服務將無法完全運作。

**使用主控台建立基本服務**

1. 在 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) 開啟 Amazon VPC 主控台。

1. 在導覽窗格中的 **VPC Lattice** 下，選擇**服務**。

1. 選擇 **Create service (建立服務)**。

1. 對於**識別符**，請執行下列動作：

   1. 輸入服務的名稱。名稱必須介於 3-40 個字元之間，並使用小寫字母、數字和連字號。它必須以字母或數字開頭和結尾。請勿使用雙連字號。

   1. （選用） 輸入服務網路的描述。您可以在建立期間或之後設定或變更描述。描述最多可有 256 個字元。

1. 若要為您的服務指定自訂網域名稱，請選取**指定自訂網域組態**，然後輸入自訂網域名稱。

   對於 HTTPS 接聽程式，您可以選擇 VPC Lattice 用來執行 TLS 終止的憑證。如果您現在未選取憑證，您可以在為服務建立 HTTPS 接聽程式時選取憑證。

   對於 TCP 接聽程式，您必須為您的服務指定自訂網域名稱。如果您指定憑證，則不會使用該憑證。反之，您可以在應用程式中執行 TLS 終止。

1. 對於**服務存取**，如果您希望與服務網路相關聯的 VPCs中的用戶端存取您的服務，請選擇**無**。若要套用[身分驗證政策](auth-policies.md)來控制對服務的存取，請選擇 **AWS IAM**。若要將資源政策套用至服務，請對**驗證政策**執行下列其中一項操作：
   + 在輸入欄位中輸入政策。例如，您可以複製和貼上的政策，請選擇**政策範例**。
   + 選擇**套用政策範本**，然後選取**允許已驗證和未驗證的存取**範本。此範本允許來自另一個帳戶的用戶端透過簽署請求 （表示已驗證） 或以匿名方式 （表示未驗證） 存取服務。
   + 選擇**套用政策範本**，然後選取**僅允許已驗證的存取**範本。此範本僅允許來自另一個帳戶的用戶端透過簽署請求來存取服務 （表示已驗證）。

1. （選用） 若要啟用[存取日誌](monitoring-access-logs.md)，請開啟**存取日誌**切換開關，並指定存取日誌的目的地，如下所示：
   + 選取 **CloudWatch Log 群組**，然後選擇 CloudWatch Log 群組。若要建立日誌群組，請選擇**在 CloudWatch 中建立日誌群組**。
   + 選取 **S3 儲存貯**體並輸入 S3 儲存貯體路徑，包括任何字首。若要搜尋 S3 儲存貯體，請選擇**瀏覽 S3**。
   + 選取 **Kinesis Data Firehose 交付串流**，然後選擇交付串流。若要建立交付串流，請選擇**在 Kinesis 中建立交付串流**。

1. （選用） 若要與其他 帳戶[共用您的服務](sharing.md)，請從 AWS RAM 資源共用中選擇**資源共用**。若要建立資源共享，請選擇**在 RAM 主控台中建立資源共享**。

1. 若要檢閱您的組態並建立服務，請選擇**略過以檢閱和建立**。否則，請選擇**下一步**來定義服務的路由組態。

## 步驟 2：定義路由
<a name="define-routing"></a>

使用接聽程式定義路由組態，讓您的服務可以將流量傳送到您指定的目標。

**先決條件**  
您必須先建立 VPC Lattice 目標群組，才能新增接聽程式。如需詳細資訊，請參閱[建立 VPC Lattice 目標群組](create-target-group.md)。

**使用主控台定義服務的路由**

1. 選擇 **Add listener (新增接聽程式)**。

1. 對於**接聽程式名稱**，您可以提供自訂接聽程式名稱，或使用接聽程式的通訊協定和連接埠做為接聽程式名稱。您指定的自訂名稱最多可有 63 個字元，且您帳戶中的每個服務都必須是唯一的。有效字元為 a-z、0-9 和連字號 (-)。您不能使用連字號做為第一個或最後一個字元，或緊接在另一個連字號之後。您無法在建立接聽程式之後變更接聽程式的名稱。

1. 選擇通訊協定，然後輸入連接埠號碼。

1. 針對**預設動作**，選擇 VPC Lattice 目標群組以接收流量，然後選擇要指派給此目標群組的權重。您可以選擇性地為預設動作新增另一個目標群組。選擇**新增動作**，然後選擇另一個目標群組並指定其權重。

1. （選用） 若要新增另一個規則，請選擇**新增規則**，然後輸入名稱、優先順序、條件和規則的動作。

   您可以為每個規則提供介於 1 到 100 之間的優先順序數字。接聽程式不能擁有多個優先順序相同的規則。依優先順序評估規則，從最低值到最高值。預設規則最後評估。

   針對**條件**，輸入路徑比對條件的路徑模式。每個字串的大小上限為 200 個字元。比較不區分大小寫。

1. （選用） 若要新增標籤，請展開**接聽程式標籤**，選擇**新增標籤**，然後輸入標籤索引鍵和標籤值。

1. 若要檢閱您的組態並建立服務，請選擇**略過以檢閱和建立**。否則，請選擇**下一步**，將您的服務與服務網路建立關聯。

## 步驟 3：建立網路關聯
<a name="associate-to-networks"></a>

將您的服務與服務網路建立關聯，以便用戶端可以與其通訊。

**使用主控台將服務與服務網路建立關聯**

1. 對於 **VPC Lattice 服務網路**，選取服務網路。若要建立服務網路，請選擇**建立 VPC Lattice 網路**。您可以將服務與多個服務網路建立關聯。

1. （選用） 若要新增標籤，請展開**服務網路關聯標籤**，選擇**新增標籤**，然後輸入標籤索引鍵和標籤值。

1. 選擇**下一步**。

## 步驟 4：檢閱和建立
<a name="review-and-create"></a>

**使用主控台檢閱組態並建立服務**

1. 檢閱您服務的組態。

1. 如果您需要修改服務組態的任何部分，請選擇**編輯**。

1. 檢閱或編輯組態完成後，請選擇**建立 VPC Lattice 服務**。

1. 如果您為服務指定了自訂網域名稱，則必須在建立服務之後設定 DNS 路由。如需詳細資訊，請參閱[為您的 VPC Lattice 服務設定自訂網域名稱](service-custom-domain-name.md)。

# 管理 VPC Lattice 服務的關聯
<a name="service-associations"></a>

當您將服務與服務網路建立關聯時，它可讓用戶端 （與服務網路相關聯的 VPC 中的資源） 向此服務提出請求。您可以關聯您帳戶中的服務，或從不同帳戶與您共用的服務。建立服務時，此步驟是選用的。不過，在建立之後，除非您將服務與服務網路建立關聯，否則服務無法與其他 服務通訊。如果服務擁有者的帳戶具有必要的存取權，則可以將其服務與服務網路建立關聯。如需詳細資訊，請參閱[VPC Lattice 的運作方式](how-it-works.md)。

**使用主控台管理服務網路關聯**

1. 在 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) 開啟 Amazon VPC 主控台。

1. 在導覽窗格中的 **VPC Lattice** 下，選擇**服務**。

1. 選取服務的名稱以開啟其詳細資訊頁面。

1. 選擇**服務網路關聯**索引標籤。

1. 若要建立關聯，請執行下列動作：

   1. 選擇**建立關聯**。

   1. 從 **VPC Lattice 服務網路中選取服務網路**。若要建立服務網路，請選擇**建立 VPC Lattice 網路**。

   1. （選用） 若要新增標籤，請展開**服務關聯標籤**，選擇**新增標籤**，然後輸入標籤索引鍵和標籤值。

   1. 選擇**儲存變更**。

1. 若要刪除關聯，請選取關聯的核取方塊，然後選擇**動作**、**刪除網路關聯**。出現確認提示時，請輸入 **confirm**，然後選擇 **Delete** (刪除)。

**使用 建立服務網路關聯 AWS CLI**  
使用 [create-service-network-service-association](https://docs.aws.amazon.com/cli/latest/reference/vpc-lattice/create-service-network-service-association.html) 命令。

**使用 刪除服務網路關聯 AWS CLI**  
使用 [delete-service-network-service-association](https://docs.aws.amazon.com/cli/latest/reference/vpc-lattice/delete-service-network-service-association.html) 命令。

# 編輯 VPC Lattice 服務的存取設定
<a name="service-access"></a>

存取設定可讓您設定和管理 服務的用戶端存取。存取設定包括*身分驗證類型*和*身分驗證政策*。驗證政策可協助您驗證和授權流向 VPC Lattice 內服務的流量。

您可以在服務網路層級、服務層級或兩者套用身分驗證政策。在服務層級，服務擁有者可以套用精細的控制項，這可能更嚴格。一般而言，身分驗證政策會由網路擁有者或雲端管理員套用。他們可以實作課程層級的授權，例如，允許來自組織內部的已驗證呼叫，或允許符合特定條件的匿名 GET 請求。如需詳細資訊，請參閱[使用身分驗證政策控制對 VPC Lattice 服務的存取](auth-policies.md)。

**使用主控台新增或更新存取政策**

1. 在 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) 開啟 Amazon VPC 主控台。

1. 在導覽窗格中的 **VPC Lattice** 下，選擇**服務**。

1. 選取服務的名稱以開啟其詳細資訊頁面。

1. 選擇**存取**索引標籤以檢查目前的存取設定。

1. 若要更新存取設定，請選擇**編輯存取設定**。

1. 如果您希望關聯服務網路中 VPCs中的用戶端存取您的服務，請針對**驗證類型**選擇**無**。

1. 若要套用資源政策來控制對服務的存取，請選擇 **AWS IAM** for **Auth 類型**，然後對 **Auth 政策**執行下列其中一項操作：
   + 在輸入欄位中輸入政策。如需您可以複製和貼上的政策範例，請選擇**政策範例**。
   + 選擇**套用政策範本**，然後選取**允許已驗證和未驗證的存取**範本。此範本允許來自另一個帳戶的用戶端透過簽署請求 （表示已驗證） 或以匿名方式 （表示未驗證） 存取服務。
   + 選擇**套用政策範本**，然後選取**僅允許已驗證的存取**範本。此範本僅允許來自另一個帳戶的用戶端透過簽署請求來存取服務 （表示已驗證）。

1. 選擇**儲存變更**。

**使用 新增或更新存取政策 AWS CLI**  
使用 [put-auth-policy](https://docs.aws.amazon.com/cli/latest/reference/vpc-lattice/put-auth-policy.html) 命令。

# 編輯 VPC Lattice 服務的監控詳細資訊
<a name="service-monitoring"></a>

VPC Lattice 會為每個請求和回應產生指標和日誌，讓應用程式監控和故障診斷更有效率。

您可以啟用存取日誌，並指定日誌的目的地資源。VPC Lattice 可以將日誌傳送至下列資源：CloudWatch Log 群組、Firehose 交付串流和 S3 儲存貯體。

**使用主控台啟用存取日誌或更新日誌目的地**

1. 在 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) 開啟 Amazon VPC 主控台。

1. 在導覽窗格中的 **VPC Lattice** 下，選擇**服務**。

1. 選取服務的名稱以開啟其詳細資訊頁面。

1. 選擇**監控**索引標籤，然後選擇**日誌**。檢查**存取日誌**，查看是否已啟用存取日誌。

1. 若要啟用或停用存取日誌，請選擇**編輯存取日誌**，然後開啟或關閉**存取日誌**切換開關。

1. 啟用存取日誌時，您必須選取交付目的地的類型，然後建立或選擇存取日誌的目的地。您也可以隨時變更交付目的地。例如：
   + 選取 **CloudWatch Log 群組**，然後選擇 CloudWatch Log 群組。若要建立日誌群組，請選擇**在 CloudWatch 中建立日誌群組**。
   + 選取 **S3 儲存貯**體並輸入 S3 儲存貯體路徑，包括任何字首。若要搜尋 S3 儲存貯體，請選擇**瀏覽 S3**。
   + 選取 **Kinesis Data Firehose 交付串流**，然後選擇交付串流。若要建立交付串流，請選擇**在 Kinesis 中建立交付串流**。

1. 選擇**儲存變更**。

**使用 啟用存取日誌 AWS CLI**  
使用 [create-access-log-subscription](https://docs.aws.amazon.com/cli/latest/reference/vpc-lattice/create-access-log-subscription.html) 命令。

**使用 更新日誌目的地 AWS CLI**  
使用 [update-access-log-subscription](https://docs.aws.amazon.com/cli/latest/reference/vpc-lattice/update-access-log-subscription.html) 命令。

**使用 停用存取日誌 AWS CLI**  
使用 [delete-access-log-subscription](https://docs.aws.amazon.com/cli/latest/reference/vpc-lattice/delete-access-log-subscription.html) 命令。

# 管理 VPC Lattice 服務的標籤
<a name="service-tags"></a>

標籤可協助您以不同的方式分類服務，例如，依用途、擁有者或環境。

您可以為每個服務新增多個標籤。每個服務的標籤索引鍵必須是唯一的。如果您使用已與服務建立關聯的金鑰新增標籤，則會更新該標籤的值。您可以使用字母、空格、數字 (UTF-8) 和下列特殊字元：\$1 - = 。\$1 : / @。不可使用結尾或前方空格。標籤值區分大小寫。

**使用主控台新增或刪除標籤**

1. 在 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) 開啟 Amazon VPC 主控台。

1. 在導覽窗格中的 **VPC Lattice** 下，選擇**服務**。

1. 選取服務的名稱以開啟其詳細資訊頁面。

1. 選擇 **Tags** (標籤) 索引標籤。

1. 若要新增標籤，請選擇**新增標籤**，然後輸入標籤索引鍵和標籤值。若要新增另一個標籤，請再次選擇**新增標籤**。當您完成新增標籤的作業時，請選擇 **Save changes (儲存變更)**。

1. 若要刪除標籤，請選取標籤的核取方塊，然後選擇**刪除**。出現確認提示時，請輸入 **confirm**，然後選擇 **Delete** (刪除)。

**使用 新增或刪除標籤 AWS CLI**  
使用 [tag-resource](https://docs.aws.amazon.com/cli/latest/reference/vpc-lattice/tag-resource.html) 和 [untag-resource](https://docs.aws.amazon.com/cli/latest/reference/vpc-lattice/untag-resource.html) 命令。

# 為您的 VPC Lattice 服務設定自訂網域名稱
<a name="service-custom-domain-name"></a>

當您建立新的服務時，VPC Lattice 會使用下列語法為服務產生唯一的完整網域名稱 (FQDN)。

```
service_name-service_id.partition_id.vpc-lattice-svcs.region.on.aws
```

不過，VPC Lattice 提供的網域名稱不容易讓使用者記住。自訂網域名稱是更簡單且更直覺URLs，您可以提供給使用者。如果您偏好為您的服務使用自訂網域名稱，例如`www.parking.example.com`，而不是 VPC Lattice 產生的 DNS 名稱，您可以在建立 VPC Lattice 服務時對其進行設定。當用戶端使用您的自訂網域名稱提出請求時，DNS 伺服器會將其解析為 VPC Lattice 產生的網域名稱。

**先決條件**
+ 您必須擁有服務的註冊網域名稱。如果您還沒有已註冊的網域名稱，您可以透過 Amazon Route 53 或任何其他商業註冊商註冊。
+ 若要接收 HTTPS 請求，您必須在 中提供自己的憑證 AWS Certificate Manager。VPC Lattice 不支援預設憑證做為備用憑證。因此，如果您未提供與自訂網域名稱對應的 SSL/TLS 憑證，則與自訂網域名稱的所有 HTTPS 連線都會失敗。如需詳細資訊，請參閱[為 VPC Lattice 自備憑證 (BYOC)](service-byoc.md)。

**限制和考量事項**
+ 您無法為服務擁有多個自訂網域名稱。
+ 建立服務之後，您無法修改自訂網域名稱。
+ 自訂網域名稱對於服務網路必須是唯一的。這表示無法使用相同服務網路中已存在的自訂網域名稱 （適用於其他服務） 來建立服務。

下列程序說明如何為您的服務設定自訂網域名稱。

------
#### [ AWS 管理主控台 ]

**為您的服務設定自訂網域名稱**

1. 在 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) 開啟 Amazon VPC 主控台。

1. 在導覽窗格中的 **VPC Lattice** 下，選擇**服務**。

1. 選擇**建立服務**。您已導覽至**步驟 1：建立服務**。

1. 在**自訂網域組態**區段中，選擇**指定自訂網域組態**。

1. 輸入您的自訂網域名稱。

1. 若要提供 HTTPS 請求，請在自訂 SSL/TLS 憑證中選取**符合您自訂網域名稱的 SSL/TLS 憑證**。如果您還沒有憑證，或不想立即新增憑證，您可以在建立 HTTPS 接聽程式時新增憑證。不過，如果沒有憑證，您的自訂網域名稱將無法提供 HTTPS 請求。如需詳細資訊，請參閱[新增 HTTPS 接聽程式](https-listeners.md#add-https-listener)。

1. 當您完成新增所有其他資訊以建立服務時，請選擇**建立**。

------
#### [ AWS CLI ]

**為您的服務設定自訂網域名稱**  
使用 [create-service](https://docs.aws.amazon.com/cli/latest/reference/vpc-lattice/create-service.html) 命令。

```
aws vpc-lattice create-service --name service_name --custom-domain-name your_custom_domain_name --type https --certificate-arn arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012
```

在上述命令中，針對 `--name`輸入服務的名稱。針對 `--custom-domain-name`，輸入服務的網域名稱，例如 `parking.example.com`。在 ACM `--certificate-arn` 中輸入憑證的 ARN。憑證 ARN 可在您的 帳戶中使用 AWS Certificate Manager。

------

## 將自訂網域名稱與您的服務建立關聯
<a name="dns-associate-custom"></a>

首先，如果您尚未這麼做，請註冊您的自訂網域名稱。網際網路名稱和數字指派公司 (ICANN) 負責管理網際網路上的網域名稱。您可以使用*網域名稱註冊商*註冊網域名稱，這是一家 ICANN 認可的組織，專門管理網域名稱的註冊。您的網站註冊商網站將為註冊您的網域名稱提供詳細指示和定價資訊。如需詳細資訊，請參閱下列資源：
+ 若要使用 Amazon Route 53 註冊網域名稱，請參閱 *Amazon Route 53 開發人員指南*中的[使用 Route 53 註冊網域名稱](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar.html)。
+ 如需這類註冊機構的清單，請參閱[認可的註冊機構目錄](http://www.internic.net/regist.html)。

接著，使用您的 DNS 服務，例如網域註冊商，建立記錄以將查詢路由到您的服務。如需詳細資訊，請參閱您的 DNS 服務文件。或者，您可以使用 Route 53 做為您的 DNS 服務。

如果您使用的是 Route 53，您可以使用別名記錄或 CNAME 記錄，將查詢路由到您的服務。我們建議您使用別名記錄，因為您可以在 DNS 命名空間的頂端節點建立別名記錄，也稱為區域頂點。

如果您使用的是 Route 53，您必須先建立*託管區域*，其中包含如何在網際網路上為網域路由流量的相關資訊。建立私有或公有託管區域之後，請建立記錄，讓您的自訂網域名稱 例如 `parking.example.com`對應至 VPC Lattice 自動產生的網域名稱，例如 `my-service-02031c045478f6ddf1.7d67968.vpc-lattice-svcs.us-west-2.on.aws`。如果沒有此映射，您的自訂網域名稱將無法在 VPC Lattice 中運作。

下列程序說明如何使用 Route 53 建立私有或公有託管區域

------
#### [ AWS 管理主控台 ]

若要建立別名記錄，以使用 Route 53 將查詢路由到服務，請參閱將[流量路由到 Amazon VPC Lattice 服務網域端點](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-vpc-lattice-service.html)。

為您的服務使用 VPC Lattice 產生的網域名稱，例如 `my-service-02031c045478f6ddf1.7d67968.vpc-lattice-svcs.us-west-2.on.aws` **值**。您可以在服務頁面上的 VPC Lattice 主控台中找到此自動產生的網域名稱。

------
#### [ AWS CLI ]

**在託管區域中建立別名記錄**

1. 取得您服務的 VPC Lattice 產生的網域名稱 （例如 `my-service-02031c045478f6ddf1.7d67968.vpc-lattice-svcs.us-west-2.on.aws`)。

1. 若要設定別名，請使用下列命令。

   ```
   aws route53 change-resource-record-sets --hosted-zone-id your-hosted-zone-ID --change-batch file://~/Desktop/change-set.json
   ```

   對於 `change-set.json` 檔案，使用下列 JSON 範例中的內容建立 JSON 檔案，並將其儲存在本機電腦上。將上述命令中的 *file：//\$1/Desktop/change-set.json* 取代為本機機器中儲存的 JSON 檔案路徑。請注意，下列 JSON 中的「類型」可以是 A 或 AAAA 記錄類型。

   ```
   {
       "Comment": "my-custom-domain-name.com alias",
       "Changes": [
           {
               "Action": "CREATE",
               "ResourceRecordSet": {
                   "Name": "my-custom-domain-name.com",
                   "Type": "alias-record-type",
                   "AliasTarget": {
                       "HostedZoneId": "your-hosted-zone-ID",
                       "DNSName": "lattice-generated-domain-name",
                       "EvaluateTargetHealth": true
                   }
               }   
           }
       ] 
   }
   ```

------

# 為 VPC Lattice 自備憑證 (BYOC)
<a name="service-byoc"></a>

若要提供 HTTPS 請求，您必須先在 (ACM) 中 AWS Certificate Manager 備妥自己的 SSL/TLS 憑證，才能設定自訂網域名稱。這些憑證必須具有符合您服務的自訂網域名稱的主體別名 (SAN) 或通用名稱 (CN)。如果 SAN 存在，我們只會在 SAN 清單中檢查相符項目。如果 SAN 不存在，我們會檢查 CN 中的相符項目。

VPC Lattice 使用伺服器名稱指示 (SNI) 提供 HTTPS 請求。DNS 會根據自訂網域名稱和符合此網域名稱的憑證，將 HTTPS 請求路由到您的 VPC Lattice 服務。若要請求 ACM 中網域名稱的 SSL/TLS 憑證或將憑證匯入 ACM，請參閱*AWS Certificate Manager 《 使用者指南*》中的[發行和管理憑證](https://docs.aws.amazon.com/acm/latest/userguide/gs.html)和[匯入憑證](https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html)。如果您無法在 ACM 中請求或匯入自己的憑證，請使用 VPC Lattice 產生的網域名稱和憑證。

VPC Lattice 每個服務只接受一個自訂憑證。不過，您可以針對多個自訂網域使用自訂憑證。這表示您可以針對使用自訂網域名稱建立的所有 VPC Lattice 服務使用相同的憑證。

若要使用 ACM 主控台檢視您的憑證，請開啟**憑證**，然後選取憑證 ID。您應該會在**關聯的資源**下看到與該憑證相關聯的 VPC Lattice 服務。

**限制及考量**
+ VPC Lattice 允許在關聯憑證的主體別名 (SAN) 或通用名稱 (CN) 深一級的萬用字元比對。例如，如果您使用自訂網域名稱建立服務，`parking.example.com`並將您自己的憑證與 SAN 建立關聯`*.example.com`。當 的請求傳入時`parking.example.com`，VPC Lattice 會將 SAN 與具有頂點網域 的任何網域名稱相符`example.com`。不過，如果您有自訂網域，`parking.different.example.com`且憑證有 SAN`*.example.com`，則請求會失敗。
+  VPC Lattice 支援單一層級的萬用字元網域比對。這表示萬用字元只能用作第一層子網域，而且只能保護一個子網域層級。例如，如果您憑證的 SAN 是 `*.example.com`，則`parking.*.example.com`不支援 。
+ VPC Lattice 支援每個網域名稱一個萬用字元。這表示 `*.*.example.com` 是無效的。如需詳細資訊，請參閱*AWS Certificate Manager 《 使用者指南*》中的[請求公有憑證](https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-public.html#request-public-console)。
+ VPC Lattice 僅支援具有 2048 位元 RSA 金鑰的憑證。
+ ACM 中的 SSL/TLS 憑證必須與您與其建立關聯的 VPC Lattice 服務位於相同的區域。

## 保護憑證的私有金鑰
<a name="securing-private-key"></a>

當您使用 ACM 請求 SSL/TLS 憑證時，ACM 會產生公有/私有金鑰對。當您匯入憑證時，會產生金鑰對。公有金鑰會成為憑證的一部分。為了安全存放私有金鑰，ACM 會使用 AWS KMS稱為 KMS 金鑰的另一個金鑰與別名 **aws/acm**。 AWS KMS 使用此金鑰來加密憑證的私有金鑰。如需詳細資訊，請參閱《 *AWS Certificate Manager 使用者指南*》中的 [AWS Certificate Manager中的資料保護](https://docs.aws.amazon.com/acm/latest/userguide/data-protection.html)。

VPC Lattice AWS 使用 TLS Connection Manager，此服務只能存取 AWS 服務，以保護和使用憑證的私有金鑰。當您使用 ACM 憑證建立 VPC Lattice 服務時，VPC Lattice 會將您的憑證與 AWS TLS Connection Manager 建立關聯。我們會針對您的 AWS 受 AWS KMS 管金鑰在 中建立授予，藉此達成此目的。此授權允許 TLS Connection Manager 使用 AWS KMS 解密憑證的私有金鑰。TLS Connection Manager 使用憑證和解密的 （純文字） 私有金鑰，與 VPC Lattice 服務的用戶端建立安全連線 (SSL/TLS 工作階段）。當憑證與 VPC Lattice 服務取消關聯時，授權會淘汰。如需詳細資訊，請參閱《AWS Key Management Service 開發人員指南》**中的[授權](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html)。

如需詳細資訊，請參閱[靜態加密](data-protection.md#encryption-rest)。

# 刪除 VPC Lattice 服務
<a name="delete-service"></a>

若要刪除 VPC Lattice 服務，您必須先刪除服務可能與任何服務網路的所有關聯。如果您刪除服務，也會刪除與服務相關的所有資源，例如資源政策、身分驗證政策、接聽程式、接聽程式規則和存取日誌訂閱。

**使用主控台刪除服務**

1. 在 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) 開啟 Amazon VPC 主控台。

1. 在導覽窗格中的 **VPC Lattice** 下，選擇**服務**。

1. 在**服務**頁面上，選取您要刪除的服務，然後選擇**動作**、**刪除服務**。

1. 出現確認提示時，請選擇**刪除**。

**使用 刪除服務 AWS CLI**  
使用 [delete-service](https://docs.aws.amazon.com/cli/latest/reference/vpc-lattice/delete-service.html) 命令。