

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

# CloudTrail 記錄管理、資料和網路活動事件的內容
<a name="cloudtrail-event-reference-record-contents"></a>

此頁面說明管理、資料或網路活動事件的記錄內容。

記錄主體所包含的欄位可協助您判斷請求的動作，以及提出請求的時機和位置。**Optional (選用)** 的值為 **True** 時，欄位只有在套用至服務、API 或事件類型時才會出現。**選用**值 **False** 表示欄位永遠存在，或其存在不依賴服務、API 或事件類型。範例為 `responseElements`，其存在於進行變更的動作 (建立、更新或刪除動作) 事件中。

**注意**  
等豐富事件的欄位`eventContext`僅適用於管理事件和資料事件。它們不適用於網路事件。

**`eventTime`**  
完成請求的日期和時間 (國際標準時間 (UTC))。事件的時間戳記來自本機主機，該主機提供 API 呼叫所在的服務 API 端點。例如，在美國西部 （奧勒岡） 區域中執行的 **CreateBucket** API 事件，會從執行 Amazon S3 端點 的 AWS 主機取得其時間戳記`s3.us-west-2.amazonaws.com`。一般而言， AWS 服務會使用網路時間通訊協定 (NTP) 來同步其系統時鐘。  
**來自：**1.0  
**選用：**False

**`eventVersion`**  
日誌事件格式的版本。目前版本為 1.11。  
`eventVersion` 值是主要和次要版本，格式為 {{major\_version}}.{{minor\_version}}。例如，您可以有一個值為 `1.10` 的 `eventVersion`，其中 `1` 是主要版本，`10` 是次要版本。  
如果 CloudTrail 對不向下相容的事件結構進行變更，主要版本就會增加。這包括已經存在的 JSON 欄位，或變更欄位內容的呈現方式 (例如，日期格式)。如果 CloudTrail 將新欄位新增至事件結構，次要版本就會增加。如果為某些或所有現有事件提供新資訊，或只有新事件類型才提供新資訊，就可能會發生這種情況。應用程式應略過新欄位，以與新次要版本的事件結構維持相容。  
如果 CloudTrail 引進新的事件類型，但卻未修改事件結構，則事件版本不會變更。  
為確保您的應用程式可以剖析事件結構，我們建議您對主要版本編號執行「等於」比較。為確保您的應用程式預期的欄位存在，我們建議您對次要版本執行「大於或等於」比較。次要版本中沒有前導零。您可以將 {{major\_version}} 和 {{minor\_version}} 解釋為數字，並執行比較操作。  
**來自：**1.0  
**選用：**False

**`userIdentity`**  
有關提出請求之 IAM 身分的資訊。如需詳細資訊，請參閱[CloudTrail userIdentity 元素](cloudtrail-event-reference-user-identity.md)。  
**來自：**1.0  
**選用：**False

**`eventSource`**  
要請求的服務。此名稱通常是較短形式的服務名稱，即沒有空格再加上 `.amazonaws.com`。例如：  
+ CloudFormation 是 `cloudformation.amazonaws.com`。
+ Amazon EC2 是 `ec2.amazonaws.com`。
+ Amazon Simple Workflow Service 為 `swf.amazonaws.com`。
此慣例有一些例外狀況。例如，Amazon CloudWatch 的 `eventSource` 是 `monitoring.amazonaws.com`。  
**來自：**1.0  
**選用：**False

**`eventName`**  
請求的動作，這是該服務中之 API 的其中一個動作。  
**來自：**1.0  
**選用：**False

**`awsRegion`**  
提出請求 AWS 區域 的 ，例如 `us-east-2`。請參閱 [CloudTrail 支援的區域](cloudtrail-supported-regions.md)。  
**來自：**1.0  
**選用：**False

**`sourceIPAddress`**  
提出請求的 IP 地址。對於源自服務主控台的動作，所報告的地址適用於基礎客戶資源，而非主控台 Web 伺服器。對於 中的服務 AWS，只會顯示 DNS 名稱。  
對於源自 AWS的事件，此欄位通常是 `AWS Internal/{{#}}`，其中 `{{#}}` 是用於內部用途的號碼。
**來自：**1.0  
**選用：**False

**`userAgent`**  
發出請求的代理程式，例如 AWS 管理主控台、 AWS 服務、 AWS SDKs或 AWS CLI。  
此欄位的大小上限為 1 KB；超過該限制的內容會被截斷。對於設定為事件大小上限為 1 MB 的事件資料存放區，只有在事件承載超過 1 MB 且超過欄位大小上限時，才會截斷欄位內容。  
範例值如下：  
+ `lambda.amazonaws.com` - 使用 AWS Lambda提出請求。
+ `aws-sdk-java` - 使用 適用於 Java 的 AWS SDK提出請求。
+ `aws-sdk-ruby` - 使用 適用於 Ruby 的 AWS SDK提出請求。
+ `aws-cli/1.3.23 Python/2.7.6 Linux/2.6.18-164.el5` – 使用 AWS CLI Linux 上安裝的 提出請求。
對於源自 的事件 AWS，如果 CloudTrail 知道是哪個 AWS 服務 呼叫，則此欄位是呼叫服務的事件來源 （例如 `ec2.amazonaws.com`)。否則，此欄位為 `AWS Internal/{{#}}`，其中 `{{#}}`是用於內部用途的數字。
**來自：**1.0  
**選用：**True

**`errorCode`**  
如果請求傳回錯誤，則表示 AWS 服務錯誤。如需顯示此欄位的範例，請參閱 [錯誤代碼和訊息日誌範例](cloudtrail-log-file-examples.md#error-code-and-error-message)。  
此欄位的大小上限為 1 KB；超過該限制的內容會被截斷。對於設定為事件大小上限為 1 MB 的事件資料存放區，只有在事件承載超過 1 MB 且超過欄位大小上限時，才會截斷欄位內容。  
對於網路活動事件，發生 VPC 端點政策違規時，錯誤碼為 `VpceAccessDenied`。  
**來自：**1.0  
**選用：**True

**`errorMessage`**  
如果請求傳回錯誤，則會是該錯誤的描述。此訊息包含授權失敗的訊息。CloudTrail 會擷取服務在處理例外狀況時所記錄的訊息。如需範例，請參閱 [錯誤代碼和訊息日誌範例](cloudtrail-log-file-examples.md#error-code-and-error-message)。  
此欄位的大小上限為 1 KB；超過該限制的內容會被截斷。對於設定為事件大小上限為 1 MB 的事件資料存放區，只有在事件承載超過 1 MB 且超過欄位大小上限時，才會截斷欄位內容。  
對於網路活動事件，當發生 VPC 端點政策違規時， `errorMessage` 一律會是下列訊息：`The request was denied due to a VPC endpoint policy`。如需 VPC 端點政策違規存取遭拒事件的詳細資訊，請參閱《*IAM 使用者指南*》中的[存取遭拒錯誤訊息範例](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_access-denied.html#access-denied-error-examples)。如需顯示 VPC 端點政策違規的網路活動事件範例，請參閱本指南中的[網路活動事件](cloudtrail-events.md#network-event-example)。  
有些 AWS 服務會在事件中提供 `errorCode`和 `errorMessage`做為最上層欄位。其他 AWS 服務在 `responseElements` 的部分提供錯誤資訊。
**來自：**1.0  
**選用：**True

**`requestParameters`**  
請求時所傳送的參數 (如果有的話)。這些參數會記錄在適當 AWS 服務的 API 參考文件中。此欄位的大小上限為 100 KB。當欄位大小超過 100 KB 時，會省略`requestParameters`內容。對於設定為事件大小上限為 1 MB 的事件資料存放區，只有在事件承載超過 1 MB 且超過欄位大小上限時，才會省略欄位內容。  
**來自：**1.0  
**選用：**False

**`responseElements`**  
對於進行變更的動作 （建立、更新或刪除動作），如果有回應元素。對於 `readOnly` APIs，此欄位為 `null`。如果動作  不會傳回回應元素，此欄位為 `null`。動作的回應元素記錄在 API 參考中  文件 AWS 服務。  
此欄位的大小上限為 100 KB。當欄位大小超過 100 KB 時，會省略`reponseElements`內容。對於設定為事件大小上限為 1 MB 的事件資料存放區，只有在事件承載超過 1 MB 且超過欄位大小上限時，才會省略欄位內容。  
此`responseElements`值可協助您追蹤請求  搭配 AWS 支援。`x-amz-request-id` 和 `x-amz-id-2`  包含的資訊可協助您使用 追蹤請求 支援。這些值為  與 服務在回應請求時傳回的請求相同  會啟動事件，因此您可以使用它們將事件與  請求。  
**來自：**1.0  
**選用：**False

 **`additionalEventData`**   
不屬於請求或回應之事件的額外資料。此欄位的大小上限為 28 KB。當欄位大小超過 28 KB 時，會省略`additionalEventData`內容。對於設定為事件大小上限為 1 MB 的事件資料存放區，只有在事件承載超過 1 MB 且超過欄位大小上限時，才會省略欄位內容。  
的內容`additionalEventData`是可變的。例如，對於[AWS 管理主控台 登入事件](cloudtrail-event-reference-aws-console-sign-in-events.md)，`Yes`如果請求是由根使用者或 IAM 使用者使用多重要素驗證 (MFA) 提出， `additionalEventData`可以包含值為 `MFAUsed`的欄位。  
**來自：**1.0  
**選用：**True

**`requestID`**  
識別請求的值。所呼叫的服務會產生此值。此欄位的大小上限為 1 KB；超過該限制的內容會被截斷。對於設定為事件大小上限為 1 MB 的事件資料存放區，只有在事件承載超過 1 MB 且超過欄位大小上限時，才會截斷欄位內容。  
**來自：**1.01  
**選用：**True

**`eventID`**  
CloudTrail 所產生的 GUID 可唯一識別每個事件。您可以使用這個值來識別單一事件。例如，您可以使用此 ID 做為主索引鍵，從可搜尋的資料庫中擷取日誌資料。  
**來自：**1.01  
**選用：**False

**`eventType`**  
識別已產生事件記錄的事件類型。這可以是下列其中一個值：  
+ `AwsApiCall` - 呼叫 API。
+ `AwsServiceEvent` - 服務產生與您追蹤相關的事件。例如，這可能會在另一個帳戶對您擁有的資源進行呼叫時發生。
+ `AwsConsoleAction`- 在主控台中採取的動作不是 API 呼叫。
+ `AwsConsoleSignIn` - 您帳戶中登入 AWS 管理主控台的使用者 (根、IAM、聯合、SAML 或 SwitchRole)。
+  `AwsVpceEvents` – CloudTrail 網路活動事件可讓 VPC 端點擁有者記錄使用其 VPC 端點從私有 VPC 到 的 AWS API 呼叫 AWS 服務。若要記錄網路活動事件，VPC 端點擁有者必須為事件來源啟用網路活動事件。
**來自：**1.02  
**選用：**False

**`apiVersion`**  
識別與 `AwsApiCall` `eventType` 值相關聯的 API 版本。  
**來自：**1.01  
**選用：**True

**`managementEvent`**  
可識別事件是否為管理事件的布林值。若 `eventVersion` 為 1.06 或更新版本，且事件類型為下列其中一項，則 `managementEvent` 會顯示在事件記錄中：  
+ `AwsApiCall`
+ `AwsConsoleAction`
+ `AwsConsoleSignIn`
+ `AwsServiceEvent`
**來自：**1.06  
**選用：**True

 **`readOnly`**   
識別此操作是否為唯讀操作。這可以是下列其中一個值：  
+ `true` - 此操作是唯讀的 (例如，`DescribeTrails`)。
+ `false` - 此操作是唯寫的 (例如，`DeleteTrail`)。
**來自：**1.01  
**選用：**True

 **`resources`**   
事件中存取之資源的清單。欄位可能包含下列資訊：  
+ 資源 ARN
+ 資源擁有者的帳戶 ID
+ 資源類型識別符，格式為：`AWS::{{aws-service-name}}::{{data-type-name}}`
例如，記錄 `AssumeRole` 事件時，`resources` 欄位可能顯示如下：  
+ ARN：`arn:aws:iam::123456789012:role/{{myRole}}`
+ 帳戶 ID：`123456789012`
+ 資源類型識別符：`AWS::IAM::Role`
如需 `resources`欄位中的範例日誌，請參閱《*IAM 使用者指南*[AWS STS 》中的 CloudTrail 日誌檔案中的 API 事件](https://docs.aws.amazon.com/IAM/latest/UserGuide/cloudtrail-integration.html#stscloudtrailexample)或《 *AWS Key Management Service 開發人員指南*》中的[記錄 AWS KMS API 呼叫](https://docs.aws.amazon.com/kms/latest/developerguide/logging-using-cloudtrail.html)。  
**來自：**1.01  
**選用：**True

**`recipientAccountId`**  
代表收到此事件的帳戶 ID。`recipientAccountID` 可能與 [CloudTrail userIdentity 元素](cloudtrail-event-reference-user-identity.md) `accountId` 不同。這可能發生在跨帳戶資源存取中。例如，如果個別帳戶使用 KMS 金鑰 (也稱為 [AWS KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html)) 呼叫[加密 API](https://docs.aws.amazon.com/kms/latest/developerguide/ct-encrypt.html)，則對於交付至提出呼叫之帳戶的事件，`accountId` 和 `recipientAccountID` 值會相同，但對於交付至擁有 KMS 金鑰之帳戶的事件，這些值就會不同。  
**來自：**1.02  
**選用：**True

**`serviceEventDetails`**  
識別服務事件，包含觸發事件的項目和結果。如需詳細資訊，請參閱[AWS 服務 事件](non-api-aws-service-events.md)。此欄位的大小上限為 100 KB。當欄位大小超過 100 KB 時，會省略`serviceEventDetails`內容。對於設定為事件大小上限為 1 MB 的事件資料存放區，只有在事件承載超過 1 MB 且超過欄位大小上限時，才會省略欄位內容。  
**來自：**1.05  
**選用：**True

**`sharedEventID`**  
CloudTrail 產生的 GUID，可從傳送至不同 AWS 帳戶的相同 AWS 動作唯一識別 CloudTrail 事件。  
例如，帳戶使用屬於另一個帳戶的 [AWS KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html) 時，使用 KMS 金鑰的帳戶以及擁有 KMS 金鑰的帳戶會收到相同動作的個別 CloudTrail 事件。針對此 AWS 動作傳遞的每個 CloudTrail 事件都會共用相同的 `sharedEventID`，但也有唯一的 `eventID`和 `recipientAccountID`。  
如需詳細資訊，請參閱[sharedEventID 範例](#shared-event-ID)。  
只有在 CloudTrail 事件交付至多個帳戶時，才會顯示 `sharedEventID` 欄位。如果發起人和擁有者是相同的 AWS 帳戶，則 CloudTrail 只會傳送一個事件，而且不會顯示 `sharedEventID` 欄位。
**來自：**1.03  
**選用：**True

 **`vpcEndpointId`**   
識別 VPC 向其他服務提出請求的 VPC 端點 AWS ，例如 Amazon EC2。  
對於由 AWS 和 透過 AWS 服務的 VPC 產生的事件，此欄位通常是 `AWS Internal`或服務名稱。
**來自：**1.04  
**選用：**True

 **`vpcEndpointAccountId`**   
識別請求已周遊之對應端點的 VPC 端點擁有者 AWS 帳戶 ID。  
對於由 AWS 和 透過 AWS 服務的 VPC 產生的事件，此欄位通常是 `AWS Internal`或服務名稱。
**開始日期：**1.09  
**選用：**True

**`eventCategory`**  
顯示事件類別。事件類別用於 [https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_LookupEvents.html](https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_LookupEvents.html)呼叫，以篩選管理事件。  
+ 對於管理事件，值為 `Management`。
+ 對於資料事件，值為 `Data`。
+ 對於網路活動事件，值為 `NetworkActivity`。
**自：**1.07  
**選用：**False

**`addendum`**  
如果事件傳遞延遲，或有關現有事件的其他資訊會在記錄事件之後變成可用，附錄欄位會顯示事件延遲原因的相關資訊。如果現有事件中缺少，附錄欄位會包含缺少的資訊，以及缺失的原因。內容包括以下：  
+ **`reason`** - 事件或其部分內容遺失的原因。可為以下任何一個值。
  + **`DELIVERY_DELAY`**- 發生延遲傳遞事件。這可能是由於高網路流量、連線問題或 CloudTrail 服務問題所造成。
  + **`UPDATED_DATA`**- 事件記錄中的欄位遺失或值不正確。
  + **`SERVICE_OUTAGE`**- 將事件記錄到 CloudTrail 的服務發生中斷，無法將事件記錄到 CloudTrail。這是非常罕見的情況。
+ **`updatedFields`** - 附錄所更新的事件記錄欄位。只有當原因是 `UPDATED_DATA` 才提供此資訊。
+ **`originalRequestID`** - 請求的原始唯一 ID。只有當原因是 `UPDATED_DATA` 才提供此資訊。
+ **`originalEventID`** - 原始事件 ID。只有當原因是 `UPDATED_DATA` 才提供此資訊。
**自：**1.08  
**選用：**True

**`sessionCredentialFromConsole`**  
值為 `true`或 的字串`false`，顯示事件是否來自 AWS 管理主控台 工作階段。此欄位不會顯示，除非值為 `true`，這意味著用於進行 API 呼叫的客戶端是代理或外部客戶端。如果已使用 Proxy 用戶端，`tlsDetails` 事件欄位不會顯示。  
**自：**1.08  
**選用：**True

**`eventContext`**  
對於已設定為包含資源標籤金鑰或 IAM 全域條件金鑰的事件資料存放區，此欄位會出現在記錄的擴充事件中。如需詳細資訊，請參閱[透過新增資源標籤索引鍵和 IAM 全域條件索引鍵來豐富 CloudTrail 事件](cloudtrail-context-events.md)。  
內容包括下列項目：  
+ `requestContext` – 包含授權程序期間評估之 IAM 全域條件金鑰的相關資訊，包括委託人、工作階段、網路和請求本身的其他詳細資訊。
+ `tagContext` – 包括與 API 呼叫所涉及資源相關聯的標籤，以及與 IAM 主體相關聯的標籤，例如角色或使用者。如需詳細資訊，請參閱[控制 IAM 主體的存取](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_iam-tags.html#access_iam-tags_control-principals)。

  與已刪除資源相關的 API 事件將不會有資源標籤。
`eventContext` 欄位僅存在於設定為包含資源標籤金鑰和 IAM 全域條件金鑰的事件資料存放區的事件中。交付至**事件歷史記錄**、Amazon EventBridge、可使用 AWS CLI `lookup-events`命令檢視，以及交付至追蹤的事件，將不會包含 `eventContext` 欄位。
**原因：**1.11  
**選用：**True

**`edgeDeviceDetails`**  
顯示作為要求目標之 Edge 裝置的相關資訊。目前，[https://aws.amazon.com/s3/outposts/](https://aws.amazon.com/s3/outposts/) 裝置事件包含此欄位。此欄位的大小上限為 28 KB；超過該限制的內容會被截斷。對於設定為事件大小上限為 1 MB 的事件資料存放區，只有在事件承載超過 1 MB 且超過欄位大小上限時，才會截斷欄位內容。  
**自：**1.08  
**選用：**True

**`tlsDetails`**  
顯示服務 API 呼叫中用戶端所提供主機名稱的 Transport Layer Security (TLS) 版本、加密套件，以及完整網域名稱 (FQDN) 的相關資訊，而這通常會是服務端點的 FQDN。如果預期的資訊遺失或空白，CloudTrail 仍會記錄部分 TLS 詳細資訊。例如，如果 TLS 版本和加密套件存在，但 `HOST` 標頭為空，則可用的 TLS 詳細資訊仍會記錄在 CloudTrail 事件中。  
+ **`tlsVersion`** - 要求的 TLS 版本。
+ **`cipherSuite`** - 請求的密碼套件 (使用的安全演算法的組合)。
+ **`clientProvidedHostHeader`** - 服務 API 呼叫中用戶端所提供的主機名稱，通常是服務端點的 FQDN。
+ **`keyExchange`** - TLS 交握中使用的金鑰交換方法。此欄位指出連線是使用傳統密碼編譯還是後量子密碼編譯。範例值`X25519MLKEM768`包括後量子 TLS 1.3、傳統 `x25519` TLS 1.3 和 `secp256r1` TLS 1.2。
在有些情形中，事件記錄中不顯示 `tlsDetails` 欄位。  
+ 如果 API 呼叫是由 AWS 服務 代表您進行，則 `tlsDetails` 欄位不存在。`userIdentity` 元素中的 `invokedBy` 欄位可識別執行 API 呼叫的 AWS 服務 。
+ 如果 `sessionCredentialFromConsole` 存在的值為 true，只有在使用外部用戶端來進行 API 呼叫時，`tlsDetails` 才會出現在事件記錄中。
**自：**1.08  
**選用：**True

## 事件大小上限為 1 MB 的欄位截斷順序
<a name="context-event-truncation-order"></a>

當您使用 [CloudTrail 主控台](query-event-data-store-cloudtrail.md)、 和 SDKs 建立或更新事件資料存放區時[AWS CLI](lake-cli-manage-eds.md#lake-cli-put-event-configuration)，您可以將事件大小上限從 256 KB 擴展到 1 MB。

擴展事件大小有助於分析和疑難排解事件，因為它可讓您查看通常會被截斷或省略的欄位的完整內容。

當事件承載超過 1 MB 時，CloudTrail 會依下列順序截斷欄位：
+ `annotation`
+ `requestID`
+ `additionalEventData`
+ `serviceEventDetails`
+ `userAgent`
+ `errorCode`
+ `eventContext`
+ `responseElements`
+ `requestParameters`
+ `errorMessage`

如果即使在截斷之後，事件承載仍無法減少到 1 MB 以下，則會發生錯誤。

## sharedEventID 範例
<a name="shared-event-ID"></a>

下列範例說明 CloudTrail 如何傳送交付動作的兩個事件：

1. Alice 有 AWS 帳戶 ((111111111111) 並建立 AWS KMS key。她是此 KMS 金鑰的擁有者。

1. Bob 有 AWS 帳戶 ((222222222222)。Alice 會將使用 KMS 金鑰的許可授予 Bob。

1. 每個帳戶都會有追蹤和個別儲存貯體。

1. Bob 使用 KMS 金鑰呼叫 `Encrypt` API。

1. CloudTrail 傳送兩個不同的事件。
   + 一個事件會傳送給 Bob。事件顯示他已使用 KMS 金鑰。
   + 一個事件會傳送給 Alice。事件顯示 Bob 已使用 KMS 金鑰。
   + 兩個事件具有相同的 `sharedEventID`，但 `eventID` 和 `recipientAccountID` 是唯一的。

![sharedEventID 欄位如何出現在日誌中](http://docs.aws.amazon.com/zh_tw/awscloudtrail/latest/userguide/images/event-reference-sharedEventId.png)
