

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

# 搭配介面 VPC 端點使用 CloudWatch Logs
<a name="cloudwatch-logs-and-interface-VPC"></a>

如果您使用 Amazon Virtual Private Cloud (Amazon VPC) 託管 AWS 資源，您可以在 VPC 和 CloudWatch Logs 之間建立私有連線。您可以使用此連線將日誌傳送到 CloudWatch Logs，而不需要透過網際網路傳送。CloudWatch Logs 支援所有區域中的 IPv4 VPC 端點，並支援所有區域中的 IPv6 端點。

Amazon VPC 是一種 AWS 服務，可用來在您定義的虛擬網路中啟動 AWS 資源。您可利用 VPC 來控制您的網路設定，例如 IP 地址範圍、子網路、路由表和網路閘道。若要將 VPC 連接到 CloudWatch Logs，請為 CloudWatch Logs 定義*界面 VPC 端點*。這類端點可讓您將 VPC 連線到 AWS 服務。端點提供可靠、可擴展的連線來連接 CloudWatch Logs，無須使用網際網路閘道、網路位址轉譯 (NAT) 執行個體或 VPN 連接。如需詳細資訊，請參閱《Amazon VPC 使用者指南》**中的[什麼是 Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/)。

 介面 VPC 端點採用 AWS PrivateLink 技術，這項 AWS 技術可使用具有私有 IP 地址的彈性網路介面，在 AWS 服務之間進行私有通訊。如需詳細資訊，請參閱[新增 – AWS PrivateLink for AWS Services](https://aws.amazon.com/blogs/aws/new-aws-privatelink-endpoints-kinesis-ec2-systems-manager-and-elb-apis-in-your-vpc/)。

下列步驟適用於 Amazon VPC 的使用者。如需詳細資訊，請參閱《*Amazon VPC 使用者指南*》中的[入門](https://docs.aws.amazon.com/vpc/latest/userguide/GetStarted.html)。

## 可用性
<a name="cloudwatch-logs-interface-VPC-availability"></a>

CloudWatch Logs 目前支援所有區域中 AWS 的 VPC 端點，包括 AWS GovCloud (US) 區域。

## 為 CloudWatch Logs 建立 VPC 端點
<a name="create-VPC-endpoint-for-CloudWatchLogs"></a>

若要搭配 VPC 開始使用 CloudWatch Logs，請為 CloudWatch Logs 建立界面 VPC 端點。服務選擇為 **com.amazonaws.*Region*.logs**。若要與 FIPS 端點連線，要選擇的服務為 `com.amazonaws.Region.logs-fips`。您不需要變更 CloudWatch Logs 的任何設定。如需詳細資訊，請參閱 *Amazon VPC 使用者指南*中的[建立界面端點](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html#create-interface-endpoint.html)。

有些 CloudWatch Logs APIs，例如 StartLiveTail 和 GetLogObject，託管於不同的端點和 VPC 端點：`stream-logs.Region.amazonaws.com`。若要為這些 APIs 建立介面 VPC 端點，要選擇的服務為 **com.amazonaws.*Region*.stream-logs**。若要與 FIPS 端點連線，要選擇的服務為 `com.amazonaws.Region.stream-logs-fips`。



## 測試 VPC 和 CloudWatch Logs 之間的連線
<a name="test-VPC-endpoint-for-CloudWatchLogs"></a>

建立端點後，您可以測試連線。

**測試 VPC 和 CloudWatch Logs 端點之間的連線**

1. 連線至位於 VPC 中的 Amazon EC2 執行個體。如需連線的詳細資訊，請參閱 Amazon EC2 文件中的[連線至 Linux 執行個體](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpce-interface.html#create-interface-endpoint.html)或[連線至 Windows 執行個體](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/connecting_to_windows_instance.html)。

1. 從執行個體中，使用 在其中一個現有日誌群組中 AWS CLI 建立日誌項目。

   首先，以日誌事件建立一個 JSON 檔案。時間戳記必須以從 1970 年 1 月 1 日 00:00:00 UTC 之後的毫秒數指定。

   ```
   [
     {
       "timestamp": 1533854071310,
       "message": "VPC Connection Test"
     }
   ]
   ```

   然後使用 `put-log-events` 命令來建立日誌項目：

   ```
   aws logs put-log-events --log-group-name LogGroupName --log-stream-name LogStreamName --log-events file://JSONFileName
   ```

   如果回應命令包含 `nextSequenceToken`，則該命令已成功而且您的 VPC 端點是正常運作的。

## 控制對 CloudWatch Logs VPC 端點的存取權
<a name="CloudWatchLogs-VPC-endpoint-policy"></a>

當您建立或修改端點時，VPC 端點政策是您連接至端點的 IAM 資源政策。如果您未在建立端點時連接政策，我們會以預設政策連接以允許完整存取服務。端點政策不會覆寫或取代 IAM 政策或服務特定的政策。這個另行區分的政策會控制從端點到所指定之服務的存取。

端點政策必須以 JSON 格式撰寫。

如需詳細資訊，請參閱《Amazon VPC 使用者指南》**中的[使用 VPC 端點控制服務的存取](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-access.html)。

以下是 CloudWatch Logs 的端點政策範例。此政策可讓透過 VPC 連線到 CloudWatch Logs 的使用者建立日誌串流，並將日誌傳送到 CloudWatch Logs，還會防止使用者執行其他 CloudWatch Logs 動作。

```
{
  "Statement": [
    {
      "Sid": "PutOnly",
      "Principal": "*",
      "Action": [
        "logs:CreateLogStream",
        "logs:PutLogEvents"
      ],
      "Effect": "Allow",
      "Resource": "*"
    }
  ]
}
```

**修改 CloudWatch Logs 的 VPC 端點政策**

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

1. 在導覽窗格中選擇 **Endpoints (端點)**。

1. 如果您尚未建立 CloudWatch Logs 的端點，請選擇 **Create Endpoint** (建立端點)。然後選取 **com.amazonaws.*Region*.logs**，然後選擇 **Create endpoint (建立端點)**。

1. 選取 **com.amazonaws.*Region*.logs** 端點，然後選擇螢幕下半部的 **Policy (政策)** 標籤。

1. 選擇 **Edit Policy (編輯政策)**，並對政策做出變更。

## VPC 內容金鑰支援
<a name="Support-VPC-Context-Keys"></a>

CloudWatch Logs 支援 `aws:SourceVpc` 和 `aws:SourceVpce` 內容金鑰，以限制存取特定 VPC 或特定 VPC 端點。這些金鑰只有在使用者使用 VPC 端點時才會運作。如需詳細資訊，請參閱《IAM 使用者指南》**中的[可用於部分服務的金鑰](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-service-available)。