

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

# 記錄管理事件
<a name="logging-management-events-with-cloudtrail"></a>

依預設，追蹤和事件資料存放區會記錄管理事件，但不會包含資料或 Insights 事件。

資料或 Insights 事件需支付額外費用。如需詳細資訊，請參閱[AWS CloudTrail 定價](https://aws.amazon.com/cloudtrail/pricing/)。

**Contents**
+ [管理事件](#logging-management-events)
+ [讀取和寫入事件](#read-write-events-mgmt)
+ [使用 記錄管理事件 AWS 管理主控台](#logging-management-events-with-the-cloudtrail-console)
  + [更新現有追蹤的管理事件設定](#logging-management-events-with-the-cloudtrail-console-trail)
  + [更新現有事件資料存放區的管理事件設定](#logging-management-events-with-the-cloudtrail-console-eds)
+ [使用 記錄管理事件 AWS CLI](#creating-mgmt-event-selectors-with-the-AWS-CLI)
  + [範例：記錄追蹤的管理事件](#log-mgmt-events-trails-examples)
    + [範例：使用進階事件選取器記錄線索的管理事件](#log-mgmt-events-trails-examples-adv)
    + [範例：使用基本事件選取器記錄線索的管理事件](#log-mgmt-events-trails-examples-basic)
  + [範例：記錄事件資料存放區的管理事件](#log-mgmt-events-eds-examples)
    + [範例：排除 AWS KMS 管理事件](#log-mgmt-events-eds-examples-kms)
    + [範例：排除 Amazon RDS 管理事件](#log-mgmt-events-eds-examples-rds)
    + [範例：從 AWS 管理主控台 工作階段排除 AWS 服務 事件和事件](#log-mgmt-events-eds-examples-service)
    + [範例：排除特定 IAM 身分的管理事件](#log-mgmt-events-eds-examples-useridentity)
+ [使用 AWS SDKs 記錄管理事件](#logging-management-events-with-the-AWS-SDKs)

## 管理事件
<a name="logging-management-events"></a>

管理事件可讓您查看在 AWS 帳戶中資源上執行的管理操作。這些也稱為控制平面操作。範例管理事件包含：
+ 設定安全性 (例如，IAM `AttachRolePolicy` API 操作)
+ 註冊裝置 (例如，Amazon EC2 `CreateDefaultVpc` API 操作)
+ 設定規則以路由資料 (例如，Amazon EC2 `CreateSubnet` API 操作)
+ 設定記錄 （例如 API AWS CloudTrail `CreateTrail` 操作）

管理事件也可以包含您帳戶中發生的非 API 事件。例如，當使用者登入您的帳戶時，CloudTrail 就會記錄 `ConsoleLogin` 事件。如需詳細資訊，請參閱[CloudTrail 擷取的非 API 事件](cloudtrail-non-api-events.md)。

依預設，追蹤和事件資料存放區被設定用來記錄管理事件。

**注意**  
CloudTrail **Event history** (事件歷史記錄) 功能僅支援管理事件。您無法從**事件歷史記錄**中排除 AWS KMS 或 Amazon RDS Data API 事件；套用至追蹤或事件資料存放區的設定不適用於**事件歷史記錄**。如需詳細資訊，請參閱[使用 CloudTrail 事件歷史記錄](view-cloudtrail-events.md)。

## 讀取和寫入事件
<a name="read-write-events-mgmt"></a>

當您設定您的追蹤或事件資料存放區以記錄管理事件時，您可以指定要記錄唯讀事件、唯寫事件，還是都記錄。
+ **讀取**

  唯讀事件包含讀取您的資源，但不予變更的 API 操作。例如，唯讀事件包含 Amazon EC2 `DescribeSecurityGroups` 和 `DescribeSubnets` API 操作。這些操作僅傳回 Amazon EC2 資源的相關資訊，但不變更您的組態。
+ **寫入**

  Write-only (唯寫) 事件只包含會修改 (或可能修改) 您資源的 API 操作。例如，Amazon EC2 `RunInstances` 和 `TerminateInstances` API 操作會修改您的執行個體。

**範例：記錄不同追蹤的讀和寫事件**

以下範例說明如何設定追蹤，將帳戶的日誌活動分割成不同的 S3 儲存貯體：一個儲存貯體接收唯讀事件，第二個儲存貯體收到唯寫事件。

1. 您要建立一個線索，然後選擇名為 `amzn-s3-demo-bucket1` 的 S3 儲存貯體接收日誌檔案。接著，您要更新線索，指定您要**讀**管理事件。

1. 您要建立第二個線索，然後選擇名為 `amzn-s3-demo-bucket2` 的 S3 儲存貯體接收日誌檔案。接著，您要更新線索，指定您要**寫**管理事件。

1. Amazon EC2 `DescribeInstances` 和 `TerminateInstances` API 操作發生在您的帳戶中。

1. `DescribeInstances` API 操作是唯讀事件，且符合第一個追蹤的設定。追蹤會記錄 並將事件交付至 `amzn-s3-demo-bucket1`。

1. `TerminateInstances` API 操作是唯寫事件，且符合第二個追蹤的設定。追蹤會記錄 並將事件交付至 `amzn-s3-demo-bucket2`。

## 使用 記錄管理事件 AWS 管理主控台
<a name="logging-management-events-with-the-cloudtrail-console"></a>

本節說明如何更新現有線索或事件資料存放區的管理事件設定。

**Topics**
+ [更新現有追蹤的管理事件設定](#logging-management-events-with-the-cloudtrail-console-trail)
+ [更新現有事件資料存放區的管理事件設定](#logging-management-events-with-the-cloudtrail-console-eds)

### 更新現有追蹤的管理事件設定
<a name="logging-management-events-with-the-cloudtrail-console-trail"></a>

使用下列程序更新現有線索的管理事件設定。

1. 登入 AWS 管理主控台 並開啟位於 https：//[https://console.aws.amazon.com/cloudtrail/](https://console.aws.amazon.com/cloudtrail/) 的 CloudTrail 主控台。

1. 開啟 CloudTrail 主控台的**線索**頁面，選擇線索名稱。

1. 針對**管理活動**，選擇 **Edit** (編輯)。
   + 如果您想要記錄**讀取**事件、**寫入**事件或兩者都記錄，請選擇 。
   + 選擇**排除 AWS KMS 事件**以篩選出 traiL 中的 AWS Key Management Service (AWS KMS) 事件。預設設定為包含所有 AWS KMS 事件。

     只有在您的線索上記錄管理 AWS KMS 事件時，才提供記錄或排除事件的選項。如果您選擇不記錄管理事件，則不會記錄 AWS KMS 事件，而且您無法變更 AWS KMS 事件記錄設定。

     AWS KMS `Encrypt`、 `Decrypt`和 等動作`GenerateDataKey`通常會產生大量 （超過 99%) 的事件。這些動作現在會記錄為 **Read (讀取)** 事件。少量的相關 AWS KMS 動作，例如 `Disable`、 `Delete`和 `ScheduleKey`（通常少於 AWS KMS 事件磁碟區的 0.5%) 會記錄為**寫入**事件。

     若要排除大量事件`Decrypt`，例如 `Encrypt`、 和 `GenerateDataKey`，但仍會記錄相關事件，例如 `Disable`、 `Delete`和 `ScheduleKey`，請選擇記錄**寫入**管理事件，並清除**排除 AWS KMS 事件**的核取方塊。
   + 選擇**排除 Amazon RDS Data API 事件**從追蹤中篩選 Amazon Relational Database Service Data API 事件。預設設定是包含所有 Amazon RDS Data API 事件。如需 Amazon RDS Data API 事件的詳細資訊，請參閱《Amazon RDS 使用者指南 (Aurora)》**中的[使用 AWS CloudTrail記錄資料 API 呼叫](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/logging-using-cloudtrail-data-api.html)。

1. 完成時，請選擇**儲存變更**。

### 更新現有事件資料存放區的管理事件設定
<a name="logging-management-events-with-the-cloudtrail-console-eds"></a>

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/cloudtrail/](https://console.aws.amazon.com/cloudtrail/) 開啟 CloudTrail 主控台。

1. 開啟 CloudTrail 主控台**的事件資料存放**區頁面，然後選擇事件資料存放區名稱。

1. 針對**管理事件**，選擇**編輯**，然後設定下列設定：

   1. 選擇**簡易事件集合**或**進階事件集合**：
      + 如果您想要記錄所有事件、僅記錄讀取事件或僅記錄寫入事件，請選擇**簡單事件集合**。您也可以選擇排除 AWS Key Management Service 和 Amazon RDS Data API 管理事件。
      + 如果您想要根據**進階事件選取器欄位的值包含或排除管理事件，包括 、、 和 欄位，請選擇進階事件集合**。 `eventName` `eventType` `eventSource` `userIdentity.arn`

   1. 如果您選擇**簡易事件集合**，請選擇您是否要記錄所有事件、僅記錄讀取事件，或僅記錄寫入事件。您也可以選擇排除 AWS KMS 和 Amazon RDS 管理事件。

   1. 如果您選取**進階事件集合**，請進行下列選擇：

      1. 在**日誌選取器範本**中，選擇預先定義的範本，或選擇**自訂**以根據進階事件選取器欄位值建置自訂組態。

         您可以從下列預先定義的範本中選擇：
         + **記錄所有事件**：選擇此範本記錄所有事件。
         + **僅記錄讀取事件** – 選擇此範本以僅記錄讀取事件。唯讀事件是不會變更資源狀態的事件，例如 `Get*`或 `Describe*`事件。
         + **僅記錄寫入事件** – 選擇此範本以僅記錄寫入事件。寫入事件新增、變更或刪除資源、屬性或成品，例如 `Put*`、`Delete*` 或 `Write*` 事件。
         + **僅記錄 AWS 管理主控台 事件** – 選擇此範本僅記錄源自 的事件 AWS 管理主控台。
         + **排除 AWS 服務 啟動的事件** – 選擇此範本以排除具有 `eventType`之 AWS 服務 的事件`AwsServiceEvent`，以及使用連結角色 (SLRs) AWS 服務啟動的事件。

      1. (選用) 在**選取器名稱**中，輸入用於識別選取器的名稱。選擇器名稱是進階事件選擇器的描述性名稱，例如「從 AWS 管理主控台 工作階段記錄管理事件」。選取器名稱會被作為 `Name` 列在進階事件選取器中，您在展開 **JSON 檢視**時可檢視該名稱。

      1. 如果您選擇**自訂**，在**進階事件選取器**中會根據進階事件選取器欄位值建立表達式。
**注意**  
選取器不支援使用萬用字元，例如 `*` 。若要將多個值與單一條件比對，您可以使用 `StartsWith`、`NotStartsWith`、 `EndsWith`或 `NotEndsWith`來明確比對事件欄位的開頭或結尾。

         1. 從下列欄位選取。
            + **`readOnly`** – `readOnly` 可設定為**等於** `true`或 的值`false`。設定為 時`false`，事件資料存放區會記錄唯讀管理事件。唯讀管理事件是不會變更資源狀態的事件，例如 `Get*`或 `Describe*`事件。寫入事件新增、變更或刪除資源、屬性或成品，例如 `Put*`、`Delete*` 或 `Write*` 事件。若要同時記錄**讀取**和**寫入**事件，請勿新增`readOnly`選取器。
            + **`eventName`** – `eventName` 可以使用任何運算子。您可以使用它來包含或排除任何管理事件，例如 `CreateAccessPoint`或 `GetAccessPoint`。
            + **`userIdentity.arn`** – 包含或排除特定 IAM 身分所採取動作的事件。如需更多詳細資訊，請參閱 [CloudTrail userIdentity 元素](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html)。
            + **`sessionCredentialFromConsole`** – 包含或排除源自 AWS 管理主控台 工作階段的事件。此欄位可以設定為**等於**或不**等於** 的值`true`。
            + **`eventSource`** – 您可以使用它來包含或排除特定事件來源。`eventSource` 通常是簡短形式的服務名稱，不含空格加 `.amazonaws.com`。例如，您可以將`eventSource`**等於 **設定為僅`ec2.amazonaws.com`記錄 Amazon EC2 管理事件。
            + **`eventType`** – 要包含或排除的 [eventType](cloudtrail-event-reference-record-contents.md#ct-event-type)。例如，您可以將此欄位設定為**不等於**`AwsServiceEvent`排除[AWS 服務 事件](non-api-aws-service-events.md)。

         1. 針對每個欄位，選擇 **\$1 條件**，視需要新增任意數目的條件，所有條件最多可指定 500 個值。

            如需有關 CloudTrail 如何評估多個條件的資訊，請參閱 [CloudTrail 如何評估欄位的多項條件](filtering-data-events.md#filtering-data-events-conditions)。
**注意**  
對於事件資料存放區上的所有選取器，您最多可以有 500 個值。這包括一個選擇器的多個值的陣列，如 `eventName`。如果所有選擇器都有單個值，則最多可以有 500 個條件新增至選擇器。

         1. 選擇 **\$1 欄位**以根據需要新增其他欄位。為避免發生錯誤，請勿為欄位設定衝突或重複的值。

      1. 也可選擇展開 **JSON 檢視畫面**將進階事件選取器視為 JSON 區塊。

   1. 選擇**啟用 Insights 事件擷取**以啟用 Insights。若要啟用 Insights，您需要設定[目的地事件資料存放區](query-event-data-store-insights.md#query-event-data-store-insights-procedure)，以便依據此事件資料存放區中的管理事件活動收集 Insights 事件。

      如果您選擇啟用 Insights，請執行下列動作。

      1. 選擇將記錄 Insights 事件的目的地事件存放區。目的地事件資料存放區將依據此事件資料存放區中的管理事件活動收集 Insights 事件。如需有關如何建立目的地事件資料存放區的資訊，請參閱 [若要建立會記錄 Insights 事件的目的地事件資料存放區](query-event-data-store-insights.md#query-event-data-store-insights-procedure)。

      1. 選擇 Insights 類型。您可以選擇 **API 呼叫率**、**API 錯誤率**，或兩者。您必須記錄**寫入**管理事件，以便記錄 **API 呼叫率**的 Insights 事件。您必須記錄**讀取**或**寫入**管理事件，以便記錄 **API 錯誤率**的 Insights 事件。

1. 完成時，請選擇**儲存變更**。

## 使用 記錄管理事件 AWS CLI
<a name="creating-mgmt-event-selectors-with-the-AWS-CLI"></a>

您可以使用 AWS CLI設定您的追蹤或事件資料存放區，以記錄管理事件。

**Topics**
+ [範例：記錄追蹤的管理事件](#log-mgmt-events-trails-examples)
+ [範例：記錄事件資料存放區的管理事件](#log-mgmt-events-eds-examples)

### 範例：記錄追蹤的管理事件
<a name="log-mgmt-events-trails-examples"></a>

若要檢視您的線索是否記錄管理事件，請執行 `get-event-selectors` 命令。

```
aws cloudtrail get-event-selectors --trail-name TrailName
```

以下範例會傳回預設的線索設定。根據預設，線索會記錄所有管理事件、記錄來自所有事件來源的事件，但不記錄資料事件。

```
{
    "TrailARN": "arn:aws:cloudtrail:us-east-1:111122223333:trail/TrailName",
    "AdvancedEventSelectors": [
        {
            "Name": "Management events selector",
            "FieldSelectors": [
                {
                    "Field": "eventCategory",
                    "Equals": [
                        "Management"
                    ]
                }
            ]
        }
    ]
}
```

您可以使用基本或進階事件選取器來記錄管理事件。您不能同時將事件選取器和進階事件選取器套用於追蹤。如果您將進階事件選取器套用至追蹤，則會覆寫任何現有的基本事件選取器。下列各節提供如何使用進階事件選取器和基本事件選取器來記錄管理事件的範例。

**Topics**
+ [範例：使用進階事件選取器記錄線索的管理事件](#log-mgmt-events-trails-examples-adv)
+ [範例：使用基本事件選取器記錄線索的管理事件](#log-mgmt-events-trails-examples-basic)

#### 範例：使用進階事件選取器記錄線索的管理事件
<a name="log-mgmt-events-trails-examples-adv"></a>

下列範例會為名為 *TrailName* 的線索建立進階事件選取器，以包含唯讀和唯寫管理事件 （省略`readOnly`選取器），但排除 AWS Key Management Service (AWS KMS) 事件。由於 AWS KMS 事件會被視為管理事件，而且可能會有大量事件，因此如果您有一個以上的線索擷取管理事件，可能會對 CloudTrail 帳單產生重大影響。

如果您選擇不記錄管理事件，則不會記錄 AWS KMS 事件，而且您無法變更 AWS KMS 事件記錄設定。

若要再次開始將 AWS KMS 事件記錄到線索，請移除`eventSource`選取器，然後再次執行 命令。

```
aws cloudtrail put-event-selectors --trail-name TrailName \
--advanced-event-selectors '
[
  {
    "Name": "Log all management events except KMS events",
    "FieldSelectors": [
      { "Field": "eventCategory", "Equals": ["Management"] },
      { "Field": "eventSource", "NotEquals": ["kms.amazonaws.com"] }
    ]
  }
]'
```

範例傳回針對追蹤設定的進階事件選取器。

```
{
  "AdvancedEventSelectors": [
    {
      "Name": "Log all management events except KMS events",
      "FieldSelectors": [
        {
          "Field": "eventCategory", 
          "Equals": [ "Management" ]
        },
        {
          "Field": "eventSource", 
          "NotEquals": [ "kms.amazonaws.com" ]
        }
      ]
    }
  ],
  "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/TrailName"
}
```

若要再次開始記錄排除的事件至追蹤，請從移除 `eventSource` 選取器，如下列命令所示。

```
aws cloudtrail put-event-selectors --trail-name TrailName \
--advanced-event-selectors '
[
  {
    "Name": "Log all management events",
    "FieldSelectors": [
      { "Field": "eventCategory", "Equals": ["Management"] }
    ]
  }
]'
```

下一個範例會為名為 *TrailName* 的線索建立進階事件選取器，以包含唯讀和唯寫管理事件 （省略選取`readOnly`器），但會排除 Amazon RDS Data API 管理事件。若要排除 Amazon RDS Data API 管理事件，請在 `eventSource` 欄位的字串值中指定 Amazon RDS Data API 事件來源：`rdsdata.amazonaws.com`。

如果您選擇不記錄管理事件，則不會記錄 Amazon RDS Data API 管理事件，而且您無法變更 Amazon RDS Data API 事件記錄設定。

若要再次開始將 Amazon RDS Data API 管理事件記錄到線索，請移除`eventSource`選取器，然後再次執行 命令。

```
aws cloudtrail put-event-selectors --trail-name TrailName \
--advanced-event-selectors '
[
  {
    "Name": "Log all management events except Amazon RDS Data API management events",
    "FieldSelectors": [
      { "Field": "eventCategory", "Equals": ["Management"] },
      { "Field": "eventSource", "NotEquals": ["rdsdata.amazonaws.com"] }
    ]
  }
]'
```

範例傳回針對追蹤設定的進階事件選取器。

```
{
  "AdvancedEventSelectors": [
    {
      "Name": "Log all management events except Amazon RDS Data API management events",
      "FieldSelectors": [
        {
          "Field": "eventCategory", 
          "Equals": [ "Management" ]
        },
        {
          "Field": "eventSource", 
          "NotEquals": [ "rdsdata.amazonaws.com" ]
        }
      ]
    }
  ],
  "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/TrailName"
}
```

若要再次開始記錄排除的事件至追蹤，請從移除 `eventSource` 選取器，如下列命令所示。

```
aws cloudtrail put-event-selectors --trail-name TrailName \
--advanced-event-selectors '
[
  {
    "Name": "Log all management events",
    "FieldSelectors": [
      { "Field": "eventCategory", "Equals": ["Management"] }
    ]
  }
]'
```

#### 範例：使用基本事件選取器記錄線索的管理事件
<a name="log-mgmt-events-trails-examples-basic"></a>

若要設定您的線索記錄管理事件，請執行 `put-event-selectors` 命令。以下範例說明如何設定您的線索以包含兩個 S3 物件的所有管理事件。您可以為追蹤指定 1 到 5 個事件選取器。您可以為追蹤指定 1 到 250 項資料資源。

**注意**  
無論事件選取器有多少個，S3 資料資源的上限數為 250。

```
aws cloudtrail put-event-selectors --trail-name TrailName --event-selectors '[{ "ReadWriteType": "All", "IncludeManagementEvents":true, "DataResources": [{ "Type": "AWS::S3::Object", "Values": ["arn:aws:s3:::amzn-s3-demo-bucket/prefix", "arn:aws:s3:::amzn-s3-demo-bucket2/prefix2"] }] }]'
```

以下範例會傳回為線索設定的事件選取器。

```
{
    "TrailARN": "arn:aws:cloudtrail:us-east-1:111122223333:trail/TrailName",
    "EventSelectors": [
        {
            "ReadWriteType": "All",
            "IncludeManagementEvents": true,
            "DataResources": [
                {
                    "Type": "AWS::S3::Object",
                    "Values": [
                        "arn:aws:s3:::amzn-s3-demo-bucket/prefix",
                        "arn:aws:s3:::amzn-s3-demo-bucket2/prefix2",
                    ]  
                }
            ],
            "ExcludeManagementEventSources": []
        }
    ]
}
```

若要從線索日誌中排除 AWS Key Management Service (AWS KMS) 事件，請執行 `put-event-selectors`命令，並新增值`ExcludeManagementEventSources`為 的 屬性`kms.amazonaws.com`。下列範例會為名為 *TrailName* 的線索建立事件選取器，以包含唯讀和唯寫管理事件，但排除 AWS KMS 事件。由於 AWS KMS 可以產生大量事件，因此此範例中的使用者可能想要限制事件以管理線索的成本。

```
aws cloudtrail put-event-selectors --trail-name TrailName --event-selectors '[{"ReadWriteType": "All","ExcludeManagementEventSources": ["kms.amazonaws.com"],"IncludeManagementEvents": true}]'
```

此範例會傳回為追蹤設定的事件選取器。

```
{
    "TrailARN": "arn:aws:cloudtrail:us-east-1:111122223333:trail/TrailName",
    "EventSelectors": [
        {
            "ReadWriteType": "All",
            "IncludeManagementEvents": true,
            "DataResources": [],
            "ExcludeManagementEventSources": [
                "kms.amazonaws.com"
            ]
        }
    ]
}
```

若要從線索的日誌中排除 Amazon RDS Data API 管理事件，請執行 `put-event-selectors`命令，並新增值`ExcludeManagementEventSources`為 的 屬性`rdsdata.amazonaws.com`。下列範例會為名為 *TrailName* 的線索建立事件選取器，以包含唯讀和唯寫管理事件，但排除 Amazon RDS Data API 管理事件。由於 Amazon RDS Data API 可以產生大量管理事件，因此此範例中的使用者可能想要限制事件以管理追蹤的成本。

```
{
    "TrailARN": "arn:aws:cloudtrail:us-east-1:111122223333:trail/TrailName",
    "EventSelectors": [
        {
            "ReadWriteType": "All",
            "IncludeManagementEvents": true,
            "DataResources": [],
            "ExcludeManagementEventSources": [
                "rdsdata.amazonaws.com"
            ]
        }
    ]
}
```

若要再次開始記錄 AWS KMS 或 Amazon RDS Data API 管理事件至線索，請將空字串傳遞為 的值`ExcludeManagementEventSources`，如下列命令所示。

```
aws cloudtrail put-event-selectors --trail-name TrailName --event-selectors '[{"ReadWriteType": "All","ExcludeManagementEventSources": [],"IncludeManagementEvents": true}]'
```

若要將相關 AWS KMS 事件記錄到 `Disable`、 `Delete`和 等線索`ScheduleKey`，但排除 `Encrypt`、 `Decrypt`和 等大量 AWS KMS 事件`GenerateDataKey`、記錄唯寫管理事件，並保留預設設定以記錄 AWS KMS 事件，如下列範例所示。

```
aws cloudtrail put-event-selectors --trail-name TrailName --event-selectors '[{"ReadWriteType": "WriteOnly","ExcludeManagementEventSources": [],"IncludeManagementEvents": true}]'
```

### 範例：記錄事件資料存放區的管理事件
<a name="log-mgmt-events-eds-examples"></a>

您可以透過設定進階事件選取器來記錄事件資料存放區的管理事件。

在事件資料存放區上記錄管理事件時，支援下列進階事件選取器欄位：
+ **`eventCategory`** – 您必須`Management`將`eventCategory`等於 設定為日誌管理事件。此為必要欄位。
+ **`readOnly`** – `readOnly` 可以設定為 `Equals` `true`或 的值`false`。設定為 時`false`，事件資料存放區會記錄唯讀管理事件。唯讀管理事件是不會變更資源狀態的事件，例如 `Get*`或 `Describe*`事件。寫入事件新增、變更或刪除資源、屬性或成品，例如 `Put*`、`Delete*` 或 `Write*` 事件。若要同時記錄**讀取**和**寫入**事件，請勿新增`readOnly`選取器。
+ **`eventName`** – `eventName` 可以使用任何運算子。您可以使用它來包含或排除任何管理事件，例如 `CreateAccessPoint`或 `GetAccessPoint`。您可以搭配此欄位使用任何運算子。
+ **`userIdentity.arn`** – 包含或排除特定 IAM 身分所採取動作的事件。如需更多詳細資訊，請參閱 [CloudTrail userIdentity 元素](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html)。
+ **`sessionCredentialFromConsole`** – 包含或排除源自 AWS 管理主控台 工作階段的事件。此欄位可以設定為**等於**或`NotEquals`值為 `true`。
+ **`eventSource`** – 您可以使用它來包含或排除特定事件來源。`eventSource` 通常是簡短形式的服務名稱，不含空格加 `.amazonaws.com`。例如，您可以將 `eventSource` `Equals` 設定為 `ec2.amazonaws.com`，以僅記錄 Amazon EC2 管理事件。
+ **`eventType`** – 要包含或排除的 [eventType](cloudtrail-event-reference-record-contents.md#ct-event-type)。例如，您可以將此欄位設定為 `NotEquals``AwsServiceEvent`以排除[AWS 服務 事件](non-api-aws-service-events.md)。您可以搭配此欄位使用任何運算子。

若要檢視您的事件資料存放區是否包括管理事件，請執行 **get-event-data-store** 命令。

```
aws cloudtrail get-event-data-store
--event-data-store arn:aws:cloudtrail:us-east-1:12345678910:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE
```

以下是回應範例。建立時間和上次更新時間的格式為 `timestamp`。

```
{
    "EventDataStoreArn": "arn:aws:cloudtrail:us-east-1:12345678910:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE",
    "Name": "myManagementEvents",
    "Status": "ENABLED",
    "AdvancedEventSelectors": [
        {
            "Name": "Management events selector",
            "FieldSelectors": [
                {
                    "Field": "eventCategory",
                    "Equals": [
                        "Management"
                    ]
                }
            ]
        }
    ],
    "MultiRegionEnabled": true,
    "OrganizationEnabled": false,
    "BillingMode": "FIXED_RETENTION_PRICING",
    "RetentionPeriod": 2557,
    "TerminationProtectionEnabled": true,
    "CreatedTimestamp": "2023-02-04T15:56:27.418000+00:00",
    "UpdatedTimestamp": "2023-02-04T15:56:27.544000+00:00"
}
```

若要建立包括全部管理事件的事件資料存放區，您可以執行 **create-event-data-store** 命令。您不需要指定任何進階事件選取器以包括全部管理事件。

```
aws cloudtrail create-event-data-store
--name my-event-data-store
--retention-period 90\
```

以下是回應範例。

```
{
    "EventDataStoreArn": "arn:aws:cloudtrail:us-east-1:12345678910:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE",
    "Name": "my-event-data-store",
    "Status": "CREATED",
    "AdvancedEventSelectors": [
        {
            "Name": "Default management events",
            "FieldSelectors": [
                {
                    "Field": "eventCategory",
                    "Equals": [
                        "Management"
                    ]
                }
            ]
        }
    ],
    "MultiRegionEnabled": true,
    "OrganizationEnabled": false,
    "BillingMode": "EXTENDABLE_RETENTION_PRICING",
    "RetentionPeriod": 90,
    "TerminationProtectionEnabled": true,
    "CreatedTimestamp": "2023-11-13T16:41:57.224000+00:00",
    "UpdatedTimestamp": "2023-11-13T16:41:57.357000+00:00"
}
```

**Topics**
+ [範例：排除 AWS KMS 管理事件](#log-mgmt-events-eds-examples-kms)
+ [範例：排除 Amazon RDS 管理事件](#log-mgmt-events-eds-examples-rds)
+ [範例：從 AWS 管理主控台 工作階段排除 AWS 服務 事件和事件](#log-mgmt-events-eds-examples-service)
+ [範例：排除特定 IAM 身分的管理事件](#log-mgmt-events-eds-examples-useridentity)

#### 範例：排除 AWS KMS 管理事件
<a name="log-mgmt-events-eds-examples-kms"></a>

若要建立排除 AWS Key Management Service (AWS KMS) 事件的事件資料存放區，請執行 `create-event-data-store`命令並指定 `eventSource` 不等於 `kms.amazonaws.com`。下列範例會建立事件資料存放區，其中包含唯讀和唯寫管理事件，但不包括 AWS KMS 事件。

```
aws cloudtrail create-event-data-store --name event-data-store-name --retention-period 90 --advanced-event-selectors '[
    {
        "Name": "Management events selector",
        "FieldSelectors": [
            {"Field": "eventCategory","Equals": ["Management"]},
            {"Field": "eventSource","NotEquals": ["kms.amazonaws.com"]}
        ]
    }
]'
```

以下是回應範例。

```
{
    "EventDataStoreArn": "arn:aws:cloudtrail:us-east-1:12345678910:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE",
    "Name": "event-data-store-name",
    "Status": "CREATED",
    "AdvancedEventSelectors": [
        {
            "Name": "Management events selector",
            "FieldSelectors": [
                {
                    "Field": "eventCategory",
                    "Equals": [
                        "Management"
                    ]
                },
                {
                    "Field": "eventSource",
                    "NotEquals": [
                        "kms.amazonaws.com"
                    ]
                }
            ]
        }
    ],
    "MultiRegionEnabled": true,
    "OrganizationEnabled": false,
    "BillingMode": "EXTENDABLE_RETENTION_PRICING",
    "RetentionPeriod": 90,
    "TerminationProtectionEnabled": true,
    "CreatedTimestamp": "2023-11-13T17:02:02.067000+00:00",
    "UpdatedTimestamp": "2023-11-13T17:02:02.241000+00:00"
}
```

#### 範例：排除 Amazon RDS 管理事件
<a name="log-mgmt-events-eds-examples-rds"></a>

若要建立排除 Amazon RDS Data API 管理事件的事件資料存放區，請執行 `create-event-data-store`命令並指定 `eventSource` 不等於 `rdsdata.amazonaws.com`。下列範例會建立包含唯讀和唯寫管理事件的事件資料存放區，但排除 Amazon RDS Data API 事件。

```
aws cloudtrail create-event-data-store --name event-data-store-name --retention-period 90 --advanced-event-selectors '[
    {
        "Name": "Management events selector",
        "FieldSelectors": [
            {"Field": "eventCategory","Equals": ["Management"]},
            {"Field": "eventSource","NotEquals": ["rdsdata.amazonaws.com"]}
        ]
    }
]'
```

以下是回應範例。

```
{
    "EventDataStoreArn": "arn:aws:cloudtrail:us-east-1:12345678910:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE",
    "Name": "my-event-data-store",
    "Status": "CREATED",
    "AdvancedEventSelectors": [
        {
            "Name": "Management events selector",
            "FieldSelectors": [
                {
                    "Field": "eventCategory",
                    "Equals": [
                        "Management"
                    ]
                },
                {
                    "Field": "eventSource",
                    "NotEquals": [
                        "rdsdata.amazonaws.com"
                    ]
                }
            ]
        }
    ],
    "MultiRegionEnabled": true,
    "OrganizationEnabled": false,
    "BillingMode": "EXTENDABLE_RETENTION_PRICING",
    "RetentionPeriod": 90,
    "TerminationProtectionEnabled": true,
    "CreatedTimestamp": "2023-11-13T17:02:02.067000+00:00",
    "UpdatedTimestamp": "2023-11-13T17:02:02.241000+00:00"
}
```

#### 範例：從 AWS 管理主控台 工作階段排除 AWS 服務 事件和事件
<a name="log-mgmt-events-eds-examples-service"></a>

下列範例會建立事件資料存放區，記錄管理事件，但排除源自 AWS 管理主控台 工作階段 AWS 服務 的事件和事件。

```
aws cloudtrail create-event-data-store --name event-data-store-name --advanced-event-selectors '[
    {
        "Name": "Exclude AWS 服務 and console events",
        "FieldSelectors": [
            {"Field": "eventCategory","Equals": ["Management"]},
            {"Field": "eventType","NotEquals": ["AwsServiceEvent"]},
            {"Field": "sessionCredentialFromConsole","NotEquals": ["true"]}
        ]
    }
]'
```

以下是回應範例。

```
{
    "EventDataStoreArn": "arn:aws:cloudtrail:us-east-1:12345678910:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE",
    "Name": "event-data-store-name",
    "Status": "CREATED",
    "AdvancedEventSelectors": [
        {
            "Name": "Exclude AWS 服務 and console events",
            "FieldSelectors": [
                {
                    "Field": "eventCategory",
                    "Equals": [
                        "Management"
                    ]
                },
                {
                    "Field": "eventType",
                    "NotEquals": [
                        "AwsServiceEvent"
                    ]
                },
                {
                    "Field": "sessionCredentialFromConsole",
                    "NotEquals": [
                        "true"
                    ]
                }
            ]
        }
    ],
    "MultiRegionEnabled": true,
    "OrganizationEnabled": false,
    "BillingMode": "EXTENDABLE_RETENTION_PRICING",
    "RetentionPeriod": 366,
    "TerminationProtectionEnabled": true,
    "CreatedTimestamp": "2024-11-13T17:02:02.067000+00:00",
    "UpdatedTimestamp": "2024-11-13T17:02:02.241000+00:00"
}
```

#### 範例：排除特定 IAM 身分的管理事件
<a name="log-mgmt-events-eds-examples-useridentity"></a>

下列範例會建立記錄管理事件的事件資料存放區，但會排除 所產生的事件`bucket-scanner-role``userIdentity`。

```
aws cloudtrail create-event-data-store --name event-data-store-name --advanced-event-selectors '[
    {
        "Name": "Exclude events generated by bucket-scanner-role userIdentity",
        "FieldSelectors": [
            {"Field": "eventCategory","Equals": ["Management"]},
            {"Field": "userIdentity.arn","NotStartsWith": ["arn:aws:sts::123456789012:assumed-role/bucket-scanner-role"]}
        ]
    }
]'
```

以下是回應範例。

```
{
    "EventDataStoreArn": "arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE",
    "Name": "event-data-store-name",
    "Status": "CREATED",
    "AdvancedEventSelectors": [
        {
            "Name": "Exclude events generated by bucket-scanner-role userIdentity",
            "FieldSelectors": [
                {
                    "Field": "eventCategory",
                    "Equals": [
                        "Management"
                    ]
                },
                {
                    "Field": "userIdentity.arn",
                    "NotStartsWith": [
                        "arn:aws:sts::123456789012:assumed-role/bucket-scanner-role"
                    ]
                }
            ]
        }
    ],
    "MultiRegionEnabled": true,
    "OrganizationEnabled": false,
    "BillingMode": "EXTENDABLE_RETENTION_PRICING",
    "RetentionPeriod": 366,
    "TerminationProtectionEnabled": true,
    "CreatedTimestamp": "2024-11-13T17:02:02.067000+00:00",
    "UpdatedTimestamp": "2024-11-13T17:02:02.241000+00:00"
}
```

## 使用 AWS SDKs 記錄管理事件
<a name="logging-management-events-with-the-AWS-SDKs"></a>

使用 [GetEventSelectors](https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_GetEventSelectors.html) 操作查看您的線索是否為線索記錄管理事件。您可以使用 [PutEventSelectors](https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_PutEventSelectors.html) 操作，設定您的線索來記錄管理事件。如需詳細資訊，請參閱 [AWS CloudTrail API 參考](https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/)。

執行 [GetEventDataStore](https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_GetEventDataStore.html) 操作以檢視您的事件資料存放區是否包括管理事件。您可以透過執行 [CreateEventDataStore](https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_CreateEventDataStore.html) 或 [UpdateEventDataStore](https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_UpdateEventDataStore.html) 操作，設定您的事件資料存放區以包括管理事件。如需詳細資訊，請參閱[使用 建立、更新和管理事件資料存放區 AWS CLI](lake-eds-cli.md)和 [AWS CloudTrail API 參考](https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/)。