

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

# 在 AWS Control Tower 中記錄和監控
<a name="logging-and-monitoring"></a>

監控可讓您針對潛在的事件做規劃並加以回應。監控活動的結果會存放在日誌檔案中。因此，記錄和監控是密切相關的概念，它們是 AWS Control Tower 架構良好的本質的重要部分。

當您設定登陸區域時，建立的其中一個共用帳戶是*日誌封存*帳戶。它專用於集中收集所有日誌，包括所有共用和成員帳戶的日誌。日誌檔案存放在 Amazon S3 儲存貯體中。這些日誌檔案可讓管理員和稽核員檢閱已發生的動作和事件。

最佳實務是，您應該從設定的所有部分 AWS 收集監控資料到日誌中，以便在發生多點失敗時更輕鬆地偵錯。 AWS 提供數種工具來監控登陸區域中的資源和活動。

例如，會持續監控控制項的狀態。您可以在 AWS Control Tower 主控台中快速查看其狀態，或透過 [AWS Control Tower APIs](https://docs.aws.amazon.com//controltower/latest/APIReference/API_Operations.html) 以程式設計方式查看。您在 Account Factory 中佈建之帳戶的運作狀態和狀態也會持續受到監控。

**從活動頁面檢視記錄的動作**

在 AWS Control Tower 主控台中，**活動**頁面提供 AWS Control Tower 管理帳戶動作的概觀。若要導覽至 AWS Control Tower **活動**頁面，請從左側導覽中選取**活動**。

活動頁面中顯示**的活動**與 AWS Control Tower AWS CloudTrail 事件日誌中報告的活動相同，但會以資料表格式顯示。若要深入瞭解特定活動，請從表格中選取活動，然後選擇 **View details (檢視詳細資料)**。

您可以在日誌封存檔案中檢視成員帳戶動作和事件。

下列各節說明在 AWS Control Tower 中監控和記錄的詳細資訊：

**主題**
+ [用於監控的整合式工具](monitoring-overview.md)
+  [使用 記錄 AWS Control Tower 動作 AWS CloudTrail](logging-using-cloudtrail.md)
+ [AWS Control Tower 中的生命週期事件](lifecycle-events.md)
+ [搭配 使用 AWS 使用者通知 AWS Control Tower](using-user-notifications.md)

# 關於在 AWS Control Tower 中記錄
<a name="about-logging"></a>

AWS Control Tower 透過與 和 的整合，自動完成動作 AWS CloudTrail 和事件的記錄 AWS Config，並將其記錄在 CloudWatch 中。系統會記錄所有動作，包括來自 AWS Control Tower 管理帳戶和組織成員帳戶的動作。您可以在 主控台**的活動**頁面上檢視管理帳戶動作和事件。您可以在日誌封存檔案中檢視成員帳戶動作和事件。

**組織層級追蹤**

當您設定登陸區域時，AWS Control Tower 會設定新的 CloudTrail 追蹤。這是*組織層級追蹤*，這表示它會記錄管理帳戶和組織中的所有成員帳戶的所有事件。此功能倚賴*受信任的存取*，授予管理帳戶在每個成員帳戶上建立追蹤的許可。

如需 AWS Control Tower 和 CloudTrail 組織線索的詳細資訊，請參閱[為組織建立線索](https://docs.aws.amazon.com//awscloudtrail/latest/userguide/creating-trail-organization.html)。

**注意**  
在登陸區域 3.0 版之前的 AWS Control Tower 版本中，AWS Control Tower 在每個帳戶中建立成員帳戶追蹤。當您更新至 3.0 版時，您的 CloudTrail 追蹤會成為組織追蹤。如需在線索之間移動時的最佳實務，請參閱 *CloudTrail 使用者指南*中的[變更線索的最佳實務](https://docs.aws.amazon.com//awscloudtrail/latest/userguide/creating-trail-organization.html#creating-an-organizational-trail-best-practice)。

當您向 AWS Control Tower 註冊帳戶時，您的帳戶會受 AWS Control Tower 組織的 AWS CloudTrail 追蹤所管理。如果您在該帳戶中已有 CloudTrail 追蹤的現有部署，除非您在 AWS Control Tower 中註冊帳戶之前刪除該帳戶的現有追蹤，否則可能會看到重複費用。

**注意**  
當您更新至登陸區域 3.0 版時，AWS Control Tower 會代表您刪除已註冊帳戶中的帳戶層級追蹤 (AWS Control Tower 已建立的追蹤）。您現有的帳戶層級日誌檔案會保留在其 Amazon S3 儲存貯體中。

# 稽核帳戶中的 Amazon S3 儲存貯體政策
<a name="logging-s3-audit-bucket"></a>

在 AWS Control Tower 中，只有在請求來自您的組織或組織單位 (OU) 時， AWS 服務才能存取您的資源。任何寫入許可都必須符合`aws:SourceOrgID`條件。

您可以使用 `aws:SourceOrgID` 條件金鑰，並在 Amazon S3 儲存貯體政策的條件元素中將 值設定為您的**組織 ID**。此條件可確保 CloudTrail 只能代表您組織內的帳戶將日誌寫入 S3 儲存貯體；可防止組織外的 CloudTrail 日誌寫入 AWS Control Tower S3 儲存貯體。

此政策不會影響您現有工作負載的功能。此政策會顯示在下列範例中。

```
S3AuditBucketPolicy:
    Type: AWS::S3::BucketPolicy
    Properties:
      Bucket: !Ref S3AuditBucket
      PolicyDocument:
        Version: 2012-10-17		 	 	 
        Statement:
          - Sid: AllowSSLRequestsOnly
            Effect: Deny
            Principal: '*'
            Action: s3:*
            Resource:
             - !Sub "arn:${AWS::Partition}:s3:::${S3AuditBucket}"
             - !Sub "arn:${AWS::Partition}:s3:::${S3AuditBucket}/*"
            Condition:
              Bool:
                aws:SecureTransport: false
          - Sid: AWSBucketPermissionsCheck
            Effect: Allow
            Principal:
              Service:
                - cloudtrail.amazonaws.com
                - config.amazonaws.com
            Action: s3:GetBucketAcl
            Resource:
              - !Sub "arn:${AWS::Partition}:s3:::${S3AuditBucket}"
          - Sid: AWSConfigBucketExistenceCheck
            Effect: Allow
            Principal:
              Service:
                - cloudtrail.amazonaws.com
                - config.amazonaws.com
            Action: s3:ListBucket
            Resource:
              - !Sub "arn:${AWS::Partition}:s3:::${S3AuditBucket}"
          - Sid: AWSBucketDeliveryForConfig
            Effect: Allow
            Principal:
              Service:
                - config.amazonaws.com
            Action: s3:PutObject
            Resource:
              - Fn::Join:
                  - ""
                  -
                    - !Sub "arn:${AWS::Partition}:s3:::"
                    - !Ref "S3AuditBucket"
                    - !Sub "/${AWSLogsS3KeyPrefix}/AWSLogs/*/*"
            Condition:
              StringEquals:
                aws:SourceOrgID: !Ref OrganizationId
          - Sid: AWSBucketDeliveryForOrganizationTrail
            Effect: Allow
            Principal:
              Service:
                - cloudtrail.amazonaws.com
            Action: s3:PutObject
            Resource: !If [IsAccountLevelBucketPermissionRequiredForCloudTrail,
                [!Sub "arn:${AWS::Partition}:s3:::${S3AuditBucket}/${AWSLogsS3KeyPrefix}/AWSLogs/${Namespace}/*", !Sub "arn:${AWS::Partition}:s3:::${S3AuditBucket}/${AWSLogsS3KeyPrefix}/AWSLogs/${OrganizationId}/*"],
                !Sub "arn:${AWS::Partition}:s3:::${S3AuditBucket}/${AWSLogsS3KeyPrefix}/AWSLogs/*/*"]
            Condition:
              StringEquals:
            aws:SourceOrgID: !Ref OrganizationId
```

如需此條件索引鍵的詳細資訊，請參閱 IAM 文件和名為「*使用可擴展性控制來存取 資源 AWS 的服務*」的 IAM 部落格文章。

# 用於監控的整合式工具
<a name="monitoring-overview"></a>

監控是維護 AWS Control Tower 及其他 AWS 解決方案可靠性、可用性和效能的重要部分。 AWS 提供下列監控工具來監看 AWS Control Tower、在發生錯誤時回報，以及適時採取自動動作：
+ *Amazon CloudWatch* AWS 會即時監控您的 AWS 資源和您在 上執行的應用程式。您可以收集和追蹤指標、建立自訂儀板表，以及設定警示，在特定指標達到您指定的閾值時通知您或採取動作。例如，您可以讓 CloudWatch 追蹤 CPU 使用量或其他 Amazon EC2 執行個體指標，並在需要時自動啟動新的執行個體。如需詳細資訊，請參閱 [Amazon CloudWatch 使用者指南](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/)。
+ *Amazon CloudWatch Events* 提供近乎即時的系統事件串流，描述 AWS 資源的變更。CloudWatch Events 啟用自動的事件驅動運算，因為您可以在這些事件發生時，編寫監看特定事件與在其他 AWS 服務內觸發自動化動作的規則。如需詳細資訊，請參閱 [Amazon CloudWatch Events 使用者指南](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/)。
+ *Amazon CloudWatch Logs* 可讓您監控、存放和存取來自 Amazon EC2 執行個體、CloudTrail 及其他來源的日誌檔案。CloudWatch Logs 可監控日誌檔案中的資訊，並在達到特定閾值時通知您。您也可以將日誌資料存檔在高耐用性的儲存空間。如需詳細資訊，請參閱 [Amazon CloudWatch Logs 使用者指南](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/)。
+ *AWS CloudTrail* 會擷取由 AWS 您的帳戶發出或代表發出的 API 呼叫和相關事件，並將日誌檔案交付至您指定的 Amazon S3 儲存貯體。您可以識別呼叫的使用者和帳戶 AWS、進行呼叫的來源 IP 地址，以及呼叫的時間。

**秘訣：**您可以透過 CloudWatch Logs 和 CloudWatch Logs Insights 檢視和查詢帳戶上的 CloudTrail 活動。 CloudWatch 此活動包含 AWS Control Tower 生命週期事件。CloudWatch Logs 的功能可讓您執行比平常使用 CloudTrail 更精細且精確的查詢。

如需詳細資訊，請參閱[使用 記錄 AWS Control Tower 動作 AWS CloudTrail](logging-using-cloudtrail.md)。

# 使用 記錄 AWS Control Tower 動作 AWS CloudTrail
<a name="logging-using-cloudtrail"></a>

AWS Control Tower 已與 整合 AWS CloudTrail，此服務提供由使用者、角色或 AWS Control Tower 中的 AWS 服務所採取之動作的記錄。CloudTrail 會將 AWS Control Tower 的動作擷取為事件。如果您建立線索，則可以將 CloudTrail 事件持續交付至 Amazon S3 儲存貯體，包括 AWS Control Tower 的事件。

即使您未設定追蹤，依然可以透過 CloudTrail 主控台中的**事件歷史記錄**檢視最新事件。您可以使用 CloudTrail 所收集的資訊，判斷對 AWS Control Tower 提出的請求、提出請求的 IP 地址、提出請求的人員、提出請求的時間，以及其他詳細資訊。

若要進一步了解 CloudTrail，包括如何設定及啟用，請參閱[《AWS CloudTrail 使用者指南》](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/)。

## CloudTrail 中的 AWS Control Tower 資訊
<a name="scontrol-tower-info-in-cloudtrail"></a>

當您建立 AWS 帳戶時，會在您的帳戶上啟用 CloudTrail。當 AWS Control Tower 中發生支援的事件活動時，該活動會與**事件歷史記錄**中的其他 AWS 服務事件一起記錄在 CloudTrail 事件中。您可以在 AWS 帳戶中檢視、搜尋和下載最近的事件。如需詳細資訊，請參閱《使用 CloudTrail 事件歷史記錄檢視事件》[https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html)。

**注意**  
在登陸區域 3.0 版之前的 AWS Control Tower 版本中，AWS Control Tower 建立了成員帳戶追蹤。當您更新至 3.0 版時，您的 CloudTrail 追蹤會更新為組織追蹤。如需在線索之間移動時的最佳實務，請參閱 CloudTrail 使用者指南中的[建立組織線](https://docs.aws.amazon.com//awscloudtrail/latest/userguide/creating-trail-organization.html#creating-an-organizational-trail-best-practice)索。

**建議：建立線索**

若要持續記錄您 AWS 帳戶中的事件，包括 AWS Control Tower 的事件，請建立追蹤。*線索*能讓 CloudTrail 將日誌檔案交付至 Amazon S3 儲存貯體。根據預設，當您在主控台建立線索時，線索會套用到所有 AWS 區域。線索會記錄 AWS 分割區中所有區域的事件，並將日誌檔案交付至您指定的 Amazon S3 儲存貯體。此外，您可以設定其他 AWS 服務，以進一步分析和處理 CloudTrail 日誌中所收集的事件資料。如需詳細資訊，請參閱下列內容：
+ [建立追蹤的概觀](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html)
+  [準備建立線索](https://docs.aws.amazon.com//awscloudtrail/latest/userguide/creating-an-organizational-trail-prepare.html)
+  [管理 CloudTrail 成本](https://docs.aws.amazon.com//awscloudtrail/latest/userguide/cloudtrail-trail-manage-costs.html)
+ [CloudTrail 支援的服務和整合](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-aws-service-specific-topics.html#cloudtrail-aws-service-specific-topics-integrations)
+ [設定 CloudTrail 的 Amazon SNS 通知](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/getting_notifications_top_level.html)
+ [從多個區域接收 CloudTrail 日誌檔案](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/receive-cloudtrail-log-files-from-multiple-regions.html)，以及[從多個帳戶接收 CloudTrail 日誌檔案](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-receive-logs-from-multiple-accounts.html)

AWS Control Tower 會將下列動作記錄為 CloudTrail 日誌檔案中的事件：

**公APIs**
+ 如需 AWS Control Tower 公有 APIs 的完整清單和每個 API 的詳細資訊，請參閱 [AWS Control Tower API 參考](https://docs.aws.amazon.com//controltower/latest/APIReference/Welcome.html)。會記錄對這些公有 APIs呼叫 AWS CloudTrail。

**其他 API**
+ `SetupLandingZone`
+ `UpdateAccountFactoryConfig`
+ `ManageOrganizationalUnit`
+ `CreateManagedAccount`
+ `GetLandingZoneStatus`
+ `GetHomeRegion`
+ `ListManagedAccounts`
+ `DescribeManagedAccount`
+ `DescribeAccountFactoryConfig`
+ `DescribeGuardrailForTarget`
+ `DescribeManagedOrganizationalUnit`
+ `ListEnabledGuardrails`
+ `ListGuardrailViolations`
+ `ListGuardrails`
+ `ListGuardrailsForTarget`
+ `ListManagedAccountsForGuardrail`
+ `ListManagedAccountsForParent`
+ `ListManagedOrganizationalUnits`
+ `ListManagedOrganizationalUnitsForGuardrail`
+ `GetGuardrailComplianceStatus`
+ `DescribeGuardrail`
+ `ListDirectoryGroups`
+ `DescribeSingleSignOn`
+ `DescribeCoreService`
+ `GetAvailableUpdates`

每一筆事件或日誌專案都會包含產生請求者的資訊。身分資訊可協助您判斷下列事項：
+ 是否使用根或 AWS Identity and Access Management (IAM) 使用者登入資料提出請求。
+ 提出該請求時，是否使用了特定角色或聯合身分使用者的暫時安全憑證。
+ 請求是否由其他 AWS 服務提出。
+ 請求是否因存取遭拒或處理成功而遭到拒絕。

如需詳細資訊，請參閱 [CloudTrail userIdentity 元素](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html)。

## 範例：AWS Control Tower 日誌檔案項目
<a name="understanding-service-name-entries"></a>

 追蹤是一種組態，能讓事件以日誌檔案的形式交付到您指定的 Amazon S3 儲存貯體。CloudTrail 日誌檔案包含一或多個日誌專案。一個事件為任何來源提出的單一請求，並包含請求動作、請求的日期和時間、請求參數等資訊。CloudTrail 事件不會以任何特定順序出現在日誌檔案中。

下列範例顯示 CloudTrail 日誌項目，其中顯示 `SetupLandingZone` AWS Control Tower 事件的典型日誌檔案項目結構，包括啟動動作之使用者的身分記錄。

```
{
  "eventVersion": "1.05",
  "userIdentity": {
    "type": "AssumedRole",
    "principalId": "AIDACKCEVSQ6C2EXAMPLE:backend-test-assume-role-session",
    "arn": "arn:aws:sts::76543EXAMPLE;:assumed-role/AWSControlTowerTestAdmin/backend-test-assume-role-session",
    "accountId": "76543EXAMPLE",
    "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "sessionContext": {
      "attributes": {
        "mfaAuthenticated": "false",
        "creationDate": "2018-11-20T19:36:11Z"
      },
      "sessionIssuer": {
        "type": "Role",
        "principalId": "AIDACKCEVSQ6C2EXAMPLE",
        "arn": "arn:aws:iam::AKIAIOSFODNN7EXAMPLE:role/AWSControlTowerTestAdmin",
        "accountId": "AIDACKCEVSQ6C2EXAMPLE",
        "userName": "AWSControlTowerTestAdmin"
      }
    }
  },
  "eventTime": "2018-11-20T19:36:15Z",
  "eventSource": "controltower.amazonaws.com",
  "eventName": "SetupLandingZone",
  "awsRegion": "us-east-1",
  "sourceIPAddress": "AWS Internal",
  "userAgent": "Coral/Netty4",
  "errorCode": "InvalidParametersException",
  "errorMessage": "Home region EU_CENTRAL_1 is unsupported",
  "requestParameters": {
    "homeRegion": "EU_CENTRAL_1",
    "logAccountEmail": "HIDDEN_DUE_TO_SECURITY_REASONS",
    "sharedServiceAccountEmail": "HIDDEN_DUE_TO_SECURITY_REASONS",
    "securityAccountEmail": "HIDDEN_DUE_TO_SECURITY_REASONS",
    "securityNotificationEmail": "HIDDEN_DUE_TO_SECURITY_REASONS"
  },
  "responseElements": null,
  "requestID": "96f47b68-ed5f-4268-931c-807cd1f89a96",
  "eventID": "4ef5cf08-39e5-4fdf-9ea2-b07ced506851",
  "eventType": "AwsApiCall",
  "recipientAccountId": "76543EXAMPLE"
}
```

# 使用 監控資源變更 AWS Config
<a name="monitoring-with-config"></a>

AWS Control Tower 會在所有註冊帳戶 AWS Config 上啟用 ，以便透過偵測控制、記錄資源變更，以及將資源變更日誌交付至日誌封存帳戶，來監控合規性。

**如果您的登陸區域版本早於 3.0**：對於已註冊的帳戶， 會針對帳戶運作的所有區域 AWS Config 記錄資源的所有變更。每個變更都會建模為組態項目 (CI)，其中包含資源識別符、區域、記錄每個變更的日期，以及變更是否與已知資源或新發現的資源相關。

**如果您的登陸區域版本是 3.0 或更新版本**：AWS Control Tower 只會將 IAM 使用者、群組、角色和客戶受管政策等全球資源的記錄限制在您所在區域。全域資源變更的副本不會儲存在每個區域中。此資源記錄限制符合 AWS Config [最佳實務](https://aws.amazon.com//blogs/mt/aws-config-best-practices/)。[全球資源的完整清單](https://docs.aws.amazon.com//config/latest/developerguide/select-resources.html)可在 AWS Config 文件中取得。
+ 若要進一步了解 AWS Config，請參閱 [ 如何 AWS Config 運作](https://docs.aws.amazon.com//config/latest/developerguide/how-does-config-work.html)。
+ 如需 AWS Config 可支援的資源清單，請參閱[支援的資源類型](https://docs.aws.amazon.com//config/latest/developerguide/resource-config-reference.html)。
+ 若要了解如何在 AWS Control Tower 環境中自訂資源追蹤，請參閱名為在 [AWS Control Tower 中自訂 AWS Config 資源追蹤](https://aws.amazon.com/blogs//mt/customize-aws-config-resource-tracking-in-aws-control-tower-environment)的部落格文章。

AWS Control Tower 會在所有註冊帳戶中設定 AWS Config 交付管道。透過此交付管道，它會記錄 AWS Config 日誌封存帳戶中 記錄的所有變更，這些變更會存放在 Amazon Simple Storage Service 儲存貯體中的資料夾。

# 在 AWS Control Tower 中管理 AWS Config 成本
<a name="config-costs"></a>

本節說明 如何 AWS Config 記錄 AWS Control Tower 帳戶中資源的變更，並向您收費。當您使用 AWS Control Tower 時 AWS Config，此資訊可協助您了解如何管理相關的成本。AWS Control Tower 無需額外費用。

**注意**  
 **如果您的登陸區域版本為 3.0 或更新版本**：AWS Control Tower 只會將 IAM 使用者、群組、角色和客戶受管政策等全球資源 AWS Config 的記錄限制在您所在區域。因此，本節中的部分資訊可能不適用於您的登陸區域。

AWS Config 旨在將帳戶運作的每個區域中每個資源的變更記錄為組態項目 (CI)。 會針對其產生的每個組態項目向您 AWS Config 收費。

**如何 AWS Config 運作**

AWS Config 會分別記錄每個區域中的資源。有些全域資源，例如 IAM 角色，每個區域都會記錄一次。例如，如果您在五個區域中運作的註冊帳戶中建立新的 IAM 角色，則 AWS Config 會產生五個 CIs，每個區域一個。其他全域資源，例如 Route 53 託管區域，在所有區域中只會記錄一次。例如，如果您在已註冊帳戶中建立新的 Route 53 託管區域， AWS Config 無論為該帳戶選取多少區域， 都會產生一個 CI。如需可協助您區分這些資源類型的清單，請參閱 [系統會多次記錄相同的資源](monitoring-with-config.md#duplicate-configuration-items)。

**注意**  
當 AWS Control Tower 使用 時 AWS Config，區域可能由 AWS Control Tower 管理，或不受管理，如果帳戶在該區域中操作，則 AWS Config 仍會記錄變更。

**AWS Config 偵測資源中的兩種關係**

AWS Config 區分資源之間的*直接*和*間接*關係。如果在另一個資源的**描述** API 呼叫中傳回資源，這些資源會記錄為直接關係。當您變更與其他資源直接關係中的資源時， AWS Config 不會為這兩個資源建立 CI。

例如，如果您建立 Amazon EC2 執行個體，且 API 要求您建立網路介面， AWS Config 請考慮讓 Amazon EC2 執行個體與網路介面有直接關係。因此， 只會 AWS Config 產生一個 CI。

AWS Config 會針對屬於*間接*關係的資源關係記錄個別變更。例如，如果您建立安全群組並新增屬於安全群組的相關聯 Amazon EC2 執行個體， AWS Config 會產生兩個 CIs。

如需直接和間接關係的詳細資訊，請參閱[什麼是與資源相關的直接和間接關係？](https://docs.aws.amazon.com//config/latest/developerguide/faq.html#faq-0)

您可以在 AWS Config 文件中找到[資源關係的清單](https://docs.aws.amazon.com//config/latest/developerguide/resource-config-reference.html)。

## 檢視已註冊帳戶的 AWS Config 記錄器資料
<a name="querying-config"></a>

AWS Config 已與 CloudWatch 整合，因此您可以在儀表板中檢視 AWS Config CIs。如需詳細資訊，請參閱名為 的部落格文章[AWS Config 支援 Amazon CloudWatch 指標](https://aws.amazon.com/about-aws/whats-new/2022/05/aws-config-supports-amazon-cloudwatch-metrics)。

若要以程式設計方式檢視 AWS Config 資料，您可以使用 AWS CLI，也可以使用其他 AWS 工具。

### 查詢特定資源上的 AWS Config 記錄器資料
<a name="querying-resources-using-the-cli"></a>

您可以使用 AWS CLI 來擷取資源的最新變更清單。

**資源歷史記錄命令：**
+ `aws configservice get-resource-config-history --resource-type RESOURCE-TYPE --resource-id RESOURCE-ID --region REGION`

若要進一步了解，請參閱 [的 API 文件`get-config-history`](https://docs.aws.amazon.com//cli/latest/reference/configservice/get-resource-config-history.html)。

### 使用 Quick 視覺化 AWS Config 資料
<a name="visualize-config-data-with-quicksight"></a>

您可以視覺化和查詢 AWS Config 整個組織中由 記錄的資源。如需詳細資訊，請參閱 [Config Resource Compliance Dashboard](https://catalog.workshops.aws/awscid/en-US/dashboards/additional/config-resource-compliance-dashboard) 和[使用 Amazon Athena 和 Quick 視覺化 AWS Config 資料](https://aws.amazon.com/blogs/mt/visualizing-aws-config-data-using-amazon-athena-and-amazon-quicksight/)。

## 在 AWS Control Tower AWS Config 中進行故障診斷
<a name="troubleshooting-config"></a>

本節提供使用 AWS Config 搭配 AWS Control Tower 時可能遇到的一些問題的相關資訊。

### 高 AWS Config 成本
<a name="high-config-costs"></a>

如果您的工作流程包含經常建立、更新或刪除資源的程序，或是處理大量資源，該工作流程可能會產生大量 CIs。如果您在非生產帳戶中執行這些程序，請考慮取消註冊帳戶。您可能需要手動停用該帳戶的 AWS Config 記錄器。

**注意**  
取消註冊帳戶後，AWS Control Tower 就無法針對該帳戶中的資源強制執行偵測性控制或日誌帳戶事件，例如 AWS Config 活動。

如需詳細資訊，請參閱[取消管理已註冊的帳戶](https://docs.aws.amazon.com//controltower/latest/userguide/unmanage-account.html)。若要了解如何停用 AWS Config 記錄器，請參閱[管理組態記錄器](https://docs.aws.amazon.com//config/latest/developerguide/stop-start-recorder.html)。

### 系統會多次記錄相同的資源
<a name="duplicate-configuration-items"></a>

檢查資源是否為[全域資源](https://docs.aws.amazon.com//config/latest/developerguide/select-resources.html)。對於 3.0 版之前的 AWS Control Tower 登陸區域， AWS Config 可以記錄操作中每個區域的特定全域資源一次。 AWS Config 例如，如果 AWS Config 在八個區域啟用 ，則會記錄每個角色八次。

**下列資源會針對 AWS Config 運作中的每個區域記錄一次：**
+ `AWS::IAM::Group` 
+ `AWS::IAM::Policy` 
+ `AWS::IAM::Role` 
+  `AWS::IAM::User`

**其他全域資源只會記錄一次。以下是記錄一次的資源範例：**
+ `AWS::Route53::HostedZone`
+ `AWS::Route53::HealthCheck`
+ `AWS::ECR::PublicRepository`
+ `AWS::GlobalAccelerator::Listener`
+ `AWS::GlobalAccelerator::EndpointGroup`
+ `AWS::GlobalAccelerator::Accelerator`

### AWS Config 未記錄資源
<a name="resource-not-recorded"></a>

某些資源與其他資源具有相依性關係。這些關係可能是*直接或間接*的**。您可以在[AWS Config 常見問答集中找到](https://docs.aws.amazon.com//config/latest/developerguide/faq.html#faq-2)已棄用間接關係的清單。

# AWS Control Tower 中的生命週期事件
<a name="lifecycle-events"></a>

AWS Control Tower 記錄的某些事件是*生命週期事件*。生命週期事件的目的是標記變更資源狀態的特定 AWS Control Tower 動作是否*完成*。生命週期事件適用於 AWS Control Tower 建立或管理的資源，例如與組織單位 (OU) 或帳戶相關的登陸區域、基準或控制。

**AWS Control Tower 生命週期事件的特性**
+ 對於每個生命週期事件，事件日誌會顯示原始 Control Tower 動作是否順利完成或失敗。
+ AWS CloudTrail 會自動將每個生命週期事件記錄為*非 API AWS 服務事件*。如需詳細資訊，請參閱 [AWS CloudTrail 使用者指南。](https://docs.aws.amazon.com//awscloudtrail/latest/userguide/non-api-aws-service-events.html)
+ 每個生命週期事件也會交付給 Amazon EventBridge 和 Amazon CloudWatch Events 服務。**注意：**若要在 EventBridge 中接收生命週期事件，您必須具有啟用記錄的作用中 AWS CloudTrail 線索。如需透過 傳遞 AWS 之服務事件的詳細資訊 AWS CloudTrail，請參閱《Amazon EventBridge 使用者指南》中的[透過 AWS CloudTrail 傳遞的 AWS 服務事件](https://docs.aws.amazon.com//eventbridge/latest/userguide/eb-service-event-cloudtrail.html)。

**AWS Control Tower 中的生命週期事件提供兩個主要優點：**
+ 由於生命週期事件會註冊完成 AWS Control Tower 動作，因此您可以建立 Amazon EventBridge 規則或 Amazon CloudWatch Events 規則，以根據生命週期事件的狀態觸發自動化工作流程中的後續步驟。
+ 日誌提供額外的詳細資訊，以協助管理員和稽核員檢閱組織中特定類型的活動。

**生命週期事件的運作方式**

 AWS Control Tower 依賴多個 服務來實作其動作。因此，只有在一系列動作完成後，才會記錄每個生命週期事件。例如，當您在 OU 上啟用控制項時，AWS Control Tower 會啟動一系列實作請求的子步驟。整個系列子步驟的最終結果會在日誌中記錄為生命週期事件的狀態。
+ 如果每個基礎子步驟都已成功完成，則生命週期事件狀態會記錄為 **Succeeded (成功)**。
+ 如果有任何基礎子步驟未成功完成，則生命週期事件狀態會記錄為 **Failed (失敗)**。

每個生命週期事件都包含一個記錄的時間戳記，顯示何時啟動 AWS Control Tower 動作，另一個時間戳記則顯示生命週期事件何時完成、標記成功或失敗。

**檢視 Control Tower 中的生命週期事件**

您可以從 AWS Control Tower 儀表板的活動****頁面檢視生命週期事件。
+ 若要瀏覽至 **Activities (活動)** 頁面，請從左側導覽窗格選擇 **Activities (活動)**。
+ 若要取得特定事件的詳細資訊，請選取事件，然後選擇右上角的 **View details (檢視詳細資料)** 按鈕。

 如需如何將 AWS Control Tower 生命週期事件整合至工作流程的詳細資訊，請參閱此部落格文章：[使用生命週期事件追蹤 AWS Control Tower 動作並觸發自動化工作流程](https://aws.amazon.com//blogs/mt/using-lifecycle-events-to-track-aws-control-tower-actions-and-trigger-automated-workflows/)。

**CreateManagedAccount 和 UpdateManagedAccount 生命週期事件的預期行為**

 當您在 AWS Control Tower 中建立帳戶或註冊帳戶時，這兩個動作會呼叫相同的內部 API。如果程序期間發生錯誤，通常是在建立帳戶但未完全佈建之後發生。當您在錯誤後重試建立帳戶，或嘗試更新佈建產品時，AWS Control Tower 會看到帳戶已存在。

由於帳戶存在，AWS Control Tower 會記錄`UpdateManagedAccount`生命週期事件，而不是重試請求結束時的`CreateManagedAccount`生命週期事件。您可能因為錯誤而預期會看到另一個`CreateManagedAccount`事件。不過，`UpdateManagedAccount`生命週期事件是預期和所需的行為。

 如果您打算使用自動化方法在 AWS Control Tower 中建立或註冊帳戶，請編寫 Lambda 函數的程式來尋找 **UpdateManagedAccount** 生命週期事件以及 **CreateManagedAccount** 生命週期事件。

**生命週期事件名稱**

每個生命週期事件的命名方式會與原始 AWS Control Tower 動作相對應，AWS CloudTrail 也會加以記錄。因此，例如，AWS Control Tower `CreateManagedAccount` CloudTrail 事件所產生的生命週期事件名為 `CreateManagedAccount`。

清單中每個名稱後面都會有個連結，連至以 `JSON` 格式記錄的詳細資訊範例。這些範例中顯示的其他詳細資訊取自 Amazon CloudWatch Events 日誌。

雖然 `JSON` 不支援註解，但是為了用於解釋，已在範例中加入一些註解。註釋前面有 “//”，並且會出現在範例的右側。

在這些範例中，已隱蔽某些帳戶名稱和組織名稱。`accountId` 始終是一個 12 個數字的序列，它在範例中已取代為 “xxxxxxxxxxxx”。`organizationalUnitID` 為唯一字串，由字母和數字組成。其形式保留在範例中。
+ [`CreateManagedAccount`](#create-managed-account)：日誌會記錄 AWS Control Tower 是否成功完成使用帳戶工廠建立和佈建新帳戶的每個動作。
+ [`UpdateManagedAccount`](#update-managed-account)：日誌會記錄 AWS Control Tower 是否成功完成每個動作，以更新與您之前使用帳戶工廠建立的帳戶相關聯的佈建產品。
+ [`EnableGuardrail`](#enable-control)：日誌會記錄 AWS Control Tower 是否成功完成每個動作，以在 OU 上啟用控制項。
+ [`DisableGuardrail`](#disable-control)：日誌會記錄 AWS Control Tower 是否成功完成每個動作，以停用 OU 上的控制項。
+ [`SetupLandingZone`](#setup-landing-zone)：日誌會記錄 AWS Control Tower 是否成功完成設定登陸區域的每個動作。
+ [`UpdateLandingZone`](#update-landing-zone)：日誌會記錄 AWS Control Tower 是否成功完成每個動作，以更新現有的登陸區域。
+ [`RegisterOrganizationalUnit`](#register-organizational-unit)：日誌會記錄 AWS Control Tower 是否成功完成每個動作，以在 OU 上啟用其控管功能。
+ [`DeregisterOrganizationalUnit`](#deregister-organizational-unit)：日誌會記錄 AWS Control Tower 是否成功完成每個動作，以停用 OU 上的控管功能。
+ [`PrecheckOrganizationalUnit`](#precheck-organizational-unit)：日誌會記錄 AWS Control Tower 是否偵測到任何會阻止**擴展控管**操作成功完成的資源。
+ [`EnableBaseline`](#enable-baseline-lfc)：日誌會記錄 AWS Control Tower 是否成功完成每個動作，以啟用 OU 下目標成員帳戶的新基準。您可以使用 `EnableBaseline` API 或 主控台啟動啟用操作。
+ [`ResetEnabledBaseline`](#reset-enabled-baseline-lfc)：日誌會記錄 AWS Control Tower 是否成功完成每個動作，以重設 OU 下目標成員帳戶上已啟用的現有基準。您可以使用 `ResetEnabledBaseline` API 或 主控台啟動重設操作。
+ [`UpdateEnabledBaseline`](#update-enabled-baseline-lfc)：日誌會記錄 AWS Control Tower 是否成功完成每個動作，以更新 OU 下目標成員帳戶上已啟用的現有基準。您可以使用 `UpdateEnabledBaseline` API 或 主控台啟動更新操作。
+ [`DisableBaseline`](#disable-baseline-lfc)：日誌會記錄 AWS Control Tower 是否成功完成每個動作，以停用 OU 下目標成員帳戶上已啟用的現有基準。停用操作可以使用 `DisableBaseline` API 或 主控台啟動。

以下各節提供 AWS Control Tower 生命週期事件清單，其中包含針對每種生命週期事件類型記錄的詳細資訊範例。

## `CreateManagedAccount`
<a name="create-managed-account"></a>

此生命週期事件會記錄 AWS Control Tower 是否使用帳戶工廠成功建立和佈建新帳戶。此事件對應於 AWS Control Tower `CreateManagedAccount` CloudTrail 事件。生命週期事件日誌包含新建立帳戶的 `accountName` 和 `accountId`，以及放置帳戶之 OU 的 `organizationalUnitName` 和 `organizationalUnitId`。

```
{
    "version": "0",
    "id": "999cccaa-eaaa-0000-1111-123456789012",         
    "detail-type": "AWS Service Event via CloudTrail",
    "source": "aws.controltower",
    "account": "XXXXXXXXXXXX",                                   // Management account ID. 
    "time": "2018-08-30T21:42:18Z",                              // Format: yyyy-MM-dd'T'hh:mm:ssZ 
    "region": "us-east-1",                                       // AWS Control Tower home region.
    "resources": [ ],
    "detail": {
        "eventVersion": "1.05",
        "userIdentity": {
            "accountId": "XXXXXXXXXXXX",                       
            "invokedBy": "AWS Internal"
        },
        "eventTime": "2018-08-30T21:42:18Z",                     // Timestamp when call was made. Format: yyyy-MM-dd'T'hh:mm:ssZ.
        "eventSource": "controltower.amazonaws.com",
        "eventName": "CreateManagedAccount",                  
        "awsRegion": "us-east-1",                               
        "sourceIPAddress": "AWS Internal",
        "userAgent": "AWS Internal",
        "eventID": "0000000-0000-0000-1111-123456789012",        
        "readOnly": false,
        "eventType": "AwsServiceEvent",
        "serviceEventDetails": {
            "createManagedAccountStatus": {
                "organizationalUnit":{
                    "organizationalUnitName":"Custom",
                    "organizationalUnitId":"ou-XXXX-l3zc8b3h"

                    },
                "account":{
                    "accountName":"LifeCycle1",
                    "accountId":"XXXXXXXXXXXX"
                    },
                "state":"SUCCEEDED",
                "message":"AWS Control Tower successfully created a managed account.",
                "requestedTimestamp":"2019-11-15T11:45:18+0000",
                "completedTimestamp":"2019-11-16T12:09:32+0000"}
        }
    }
}
```

## `UpdateManagedAccount`
<a name="update-managed-account"></a>

此生命週期事件會記錄 AWS Control Tower 是否成功更新與先前使用帳戶工廠建立的帳戶相關聯的佈建產品。此事件對應於 AWS Control Tower `UpdateManagedAccount` CloudTrail 事件。生命週期事件日誌包含相關聯帳戶的 `organizationalUnitId` 和 `organizationalUnitName`，以及放置更新帳戶之 OU 的 `accountName` 和 `accountId`。

```
{
    "version": "0",
    "id": "999cccaa-eaaa-0000-1111-123456789012",                
    "detail-type": "AWS Service Event via CloudTrail",
    "source": "aws.controltower",
    "account": "XXXXXXXXXXXX",                                   // AWS Control Tower organization management account.
    "time": "2018-08-30T21:42:18Z",                              // Format: yyyy-MM-dd'T'hh:mm:ssZ 
    "region": "us-east-1",                                       // AWS Control Tower home region.
    "resources": [],
    "detail": {
        "eventVersion": "1.05",
        "userIdentity": {
            "accountId": "XXXXXXXXX",                        
            "invokedBy": "AWS Internal"
        },
        "eventTime": "2018-08-30T21:42:18Z",                     // Timestamp when call was made. Format: yyyy-MM-dd'T'hh:mm:ssZ.
        "eventSource": "controltower.amazonaws.com",
        "eventName": "UpdateManagedAccount",                   
        "awsRegion": "us-east-1",                                
        "sourceIPAddress": "AWS Internal",
        "userAgent": "AWS Internal",
        "eventID": "0000000-0000-0000-1111-123456789012",        
        "readOnly": false,
        "eventType": "AwsServiceEvent",
        "serviceEventDetails": {
            "updateManagedAccountStatus": {
                "organizationalUnit":{
                    "organizationalUnitName":"Custom",
                    "organizationalUnitId":"ou-XXXX-l3zc8b3h"
                    },
                "account":{
                    "accountName":"LifeCycle1",
                    "accountId":"XXXXXXXXXXXX"
                    },
                "state":"SUCCEEDED",
                "message":"AWS Control Tower successfully updated a managed account.",
                "requestedTimestamp":"2019-11-15T11:45:18+0000",
                "completedTimestamp":"2019-11-16T12:09:32+0000"}
        }
    }
}
```

## `EnableGuardrail`
<a name="enable-control"></a>

此生命週期事件會記錄 AWS Control Tower 是否成功在由 AWS Control Tower 管理的 OU 上啟用控制項。此事件對應於 AWS Control Tower `EnableGuardrail` CloudTrail 事件。生命週期事件日誌包含控制項`guardrailBehavior`的 `guardrailId`和 ，以及啟用控制項之 OU `organizationalUnitId` 的 `organizationalUnitName`和 。

```
{
    "version": "0",
    "id": "999cccaa-eaaa-0000-1111-123456789012",         
    "detail-type": "AWS Service Event via CloudTrail",
    "source": "aws.controltower",
    "account": "XXXXXXXXXXXX",                                 
    "time": "2018-08-30T21:42:18Z",                              // End-time of action. Format: yyyy-MM-dd'T'hh:mm:ssZ 
    "region": "us-east-1",                                       // AWS Control Tower home region.
    "resources": [ ],
    "detail": {
        "eventVersion": "1.05",
        "userIdentity": {
            "accountId": "XXXXXXXXXXXX",                    
            "invokedBy": "AWS Internal"
        },
        "eventTime": "2018-08-30T21:42:18Z",                  
        "eventSource": "controltower.amazonaws.com",             
        "eventName": "EnableGuardrail",                   
        "awsRegion": "us-east-1",                              
        "sourceIPAddress": "AWS Internal",
        "userAgent": "AWS Internal",
        "eventID": "0000000-0000-0000-1111-123456789012",       
        "readOnly": false,
        "eventType": "AwsServiceEvent",
        "serviceEventDetails": {
            "enableGuardrailStatus": {
                "organizationalUnits": [
                    {
                      "organizationalUnitName": "Custom",
                      "organizationalUnitId": "ou-vwxy-18vy4yro"
                    }
                  ],
                  "guardrails": [
                    {
                      "guardrailId": "AWS-GR_RDS_INSTANCE_PUBLIC_ACCESS_CHECK",
                      "guardrailBehavior": "DETECTIVE"
                    }
                  ],
                  "state": "SUCCEEDED",
                  "message": "AWS Control Tower successfully enabled a guardrail on an organizational unit.",
                  "requestTimestamp": "2019-11-12T09:01:07+0000",
                  "completedTimestamp": "2019-11-12T09:01:54+0000"
                }
        }
    }
}
```

## `DisableGuardrail`
<a name="disable-control"></a>

此生命週期事件會記錄 AWS Control Tower 是否成功停用由 AWS Control Tower 管理之 OU 上的控制項。此事件對應於 AWS Control Tower `DisableGuardrail` CloudTrail 事件。生命週期事件日誌包含控制項`guardrailBehavior`的 `guardrailId`和 ，以及停用控制項之 OU `organizationalUnitId` 的 `organizationalUnitName`和 。

```
{
    "version": "0",
    "id": "999cccaa-eaaa-0000-1111-123456789012",     
    "detail-type": "AWS Service Event via CloudTrail",
    "source": "aws.controltower",
    "account": "XXXXXXXXXXXX",                         
    "time": "2018-08-30T21:42:18Z",                   
    "region": "us-east-1",                           
    "resources": [ ],
    "detail": {
        "eventVersion": "1.05",
        "userIdentity": {
            "accountId": "XXXXXXXXXXXX",                 
            "invokedBy": "AWS Internal"
        },
        "eventTime": "2018-08-30T21:42:18Z",            
        "eventSource": "controltower.amazonaws.com",
        "eventName": "DisableGuardrail",                 
        "awsRegion": "us-east-1",                            
        "sourceIPAddress": "AWS Internal",
        "userAgent": "AWS Internal",
        "eventID": "0000000-0000-0000-1111-123456789012",     
        "readOnly": false,
        "eventType": "AwsServiceEvent",
        "serviceEventDetails": {
            "disableGuardrailStatus": {
                   "organizationalUnits": [
                    {
                      "organizationalUnitName": "Custom",
                      "organizationalUnitId": "ou-vwxy-18vy4yro"
                    }
                  ],
                  "guardrails": [
                    {
                      "guardrailId": "AWS-GR_RDS_INSTANCE_PUBLIC_ACCESS_CHECK",
                      "guardrailBehavior": "DETECTIVE"
                    }
                  ],
                  "state": "SUCCEEDED",
                  "message": "AWS Control Tower successfully disabled a guardrail on an organizational unit.",
                  "requestTimestamp": "2019-11-12T09:01:07+0000",
                  "completedTimestamp": "2019-11-12T09:01:54+0000"
                }
            }
        }
    }
```

## `SetupLandingZone`
<a name="setup-landing-zone"></a>

此生命週期事件會記錄 AWS Control Tower 是否成功設定登陸區域。此事件對應於 AWS Control Tower `SetupLandingZone` CloudTrail 事件。生命週期事件日誌包含 `rootOrganizationalId`，這是 AWS Control Tower 從管理帳戶建立之組織的 ID。日誌項目也包含`organizationalUnitId`每個 OUs的 `organizationalUnitName`和 ，以及每個帳戶`accountId`在 AWS Control Tower 設定登陸區域時建立的 `accountName`和 。

```
{
    "version": "0",
    "id": "999cccaa-eaaa-0000-1111-123456789012",                // Request ID.
    "detail-type": "AWS Service Event via CloudTrail",
    "source": "aws.controltower",
    "account": "XXXXXXXXXXXX",                                   // Management account ID.
    "time": "2018-08-30T21:42:18Z",                              // Event time from CloudTrail.
    "region": "us-east-1",                                       // Management account CloudTrail region.
    "resources": [ ],
    "detail": {
        "eventVersion": "1.05",
        "userIdentity": {
            "accountId": "XXXXXXXXXXXX",                         // Management-account ID.
            "invokedBy": "AWS Internal"
        },
        "eventTime": "2018-08-30T21:42:18Z",                     // Timestamp when call was made. Format: yyyy-MM-dd'T'hh:mm:ssZ.
        "eventSource": "controltower.amazonaws.com",
        "eventName": "SetupLandingZone",
        "awsRegion": "us-east-1",                                // AWS Control Tower home region.
        "sourceIPAddress": "AWS Internal",
        "userAgent": "AWS Internal",
        "eventID": "CloudTrail_event_ID",                        // This value is generated by CloudTrail.
        "readOnly": false,
        "eventType": "AwsServiceEvent",
        "serviceEventDetails": {
            "setupLandingZoneStatus": {
                "state": "SUCCEEDED",                             // Status of entire lifecycle operation.
                "message": "AWS Control Tower successfully set up a new landing zone.",                
                "rootOrganizationalId" : "r-1234",
                "organizationalUnits" : [                         // Use a list.
                  {
                    "organizationalUnitName": "Security",             // Security OU name.
                    "organizationalUnitId": "ou-adpf-302pk332"    // Security OU ID.
                  },
                  {
                    "organizationalUnitName": "Custom",           // Custom OU name.
                    "organizationalUnitId": "ou-adpf-302pk332"    // Custom OU ID. 
                  },
                ],
               "accounts": [                                      // All created accounts are here. Use a list of "account" objects.

                  {
                    "accountName": "Audit",  
                    "accountId": "XXXXXXXXXXXX"                        
                  },
                  {
                    "accountName": "Log archive",                 
                    "accountId": "XXXXXXXXXXXX"
                  }
              ],
              "requestedTimestamp": "2018-08-30T21:42:18Z",
              "completedTimestamp": "2018-08-30T21:42:18Z"
            }
        }
    }
}
```

## `UpdateLandingZone`
<a name="update-landing-zone"></a>

此生命週期事件會記錄 AWS Control Tower 是否成功更新您現有的登陸區域。此事件對應於 AWS Control Tower `UpdateLandingZone` CloudTrail 事件。生命週期事件日誌包含 `rootOrganizationalId`，這是由 AWS Control Tower 管理的 （已更新） 組織的 ID。當 AWS Control Tower 最初設定登陸區域時，日誌項目也包含`organizationalUnitName``organizationalUnitId`每個 OUs的 和 ，以及`accountId`每個帳戶先前建立的 `accountName`和 。

```
{
    "version": "0",
    "id": "999cccaa-eaaa-0000-1111-123456789012",                // Request ID.
    "detail-type": "AWS Service Event via CloudTrail",
    "source": "aws.controltower",
    "account": "XXXXXXXXXXXX",                                   // Management account ID.
    "time": "2018-08-30T21:42:18Z",                              // Event time from CloudTrail.
    "region": "us-east-1",                                       // Management account CloudTrail region.
    "resources": [ ],
    "detail": {
        "eventVersion": "1.05",
        "userIdentity": {
            "accountId": "XXXXXXXXXXXX",                         // Management account ID.
            "invokedBy": "AWS Internal"
        },
        "eventTime": "2018-08-30T21:42:18Z",                     // Timestamp when call was made. Format: yyyy-MM-dd'T'hh:mm:ssZ.
        "eventSource": "controltower.amazonaws.com",
        "eventName": "UpdateLandingZone",
        "awsRegion": "us-east-1",                                // AWS Control Tower home region.
        "sourceIPAddress": "AWS Internal",
        "userAgent": "AWS Internal",
        "eventID": "CloudTrail_event_ID",                        // This value is generated by CloudTrail.

        "readOnly": false,
        "eventType": "AwsServiceEvent",
        "serviceEventDetails": {
            "updateLandingZoneStatus": {
                "state": "SUCCEEDED",                            // Status of entire operation.
                "message": "AWS Control Tower successfully updated a landing zone.",                

                "rootOrganizationalId" : "r-1234",
                "organizationalUnits" : [                         // Use a list.
                  {
                    "organizationalUnitName": "Security",             // Security OU name.
                    "organizationalUnitId": "ou-adpf-302pk332"    // Security OU ID.
                  },
                  {
                    "organizationalUnitName": "Custom",            // Custom OU name.
                    "organizationalUnitId": "ou-adpf-302pk332"     // Custom OU ID.
                  },
                ],
               "accounts": [                                       // All created accounts are here. Use a list of "account" objects.

                  {
                    "accountName": "Audit",  
                    "accountId": "XXXXXXXXXXXX"                        
                  },
                  {
                    "accountName": "Log archive",                 
                    "accountId": "XXXXXXXXXX"
                  }
              ],
              "requestedTimestamp": "2018-08-30T21:42:18Z",
              "completedTimestamp": "2018-08-30T21:42:18Z"
            }
        }
    }
}
```

## `RegisterOrganizationalUnit`
<a name="register-organizational-unit"></a>

此生命週期事件會記錄 AWS Control Tower 是否在 OU 上成功啟用其控管功能。此事件對應於 AWS Control Tower `RegisterOrganizationalUnit` CloudTrail 事件。生命週期事件日誌包含 AWS Control Tower `organizationalUnitId` 在其控管下提供的 OU 的 `organizationalUnitName`和 。

```
{
    "version": "0",
    "id": "999cccaa-eaaa-0000-1111-123456789012",            
    "detail-type": "AWS Service Event via CloudTrail", 
    "source": "aws.controltower",
    "account": "123456789012",                               
    "time": "2018-08-30T21:42:18Z",                  
    "region": "us-east-1",                       
    "resources": [ ],
    "detail": {
        "eventVersion": "1.05",
        "userIdentity": {
            "accountId": "XXXXXXXXXXXX",                
            "invokedBy": "AWS Internal"
        },
        "eventTime": "2018-08-30T21:42:18Z",               
        "eventSource": "controltower.amazonaws.com",
        "eventName": "RegisterOrganizationalUnit",        
        "awsRegion": "us-east-1",                           
        "sourceIPAddress": "AWS Internal",
        "userAgent": "AWS Internal",
        "eventID": "0000000-0000-0000-1111-123456789012",    
        "readOnly": false,
        "eventType": "AwsServiceEvent",
        "serviceEventDetails": {
            "registerOrganizationalUnitStatus": {
                "state": "SUCCEEDED",                        

                "message": "AWS Control Tower successfully registered an organizational unit.",

                "organizationalUnit" :                        
                  {
                    "organizationalUnitName": "Test",            
                    "organizationalUnitId": "ou-adpf-302pk332"    
                  }
                "requestedTimestamp": "2018-08-30T21:42:18Z",
                "completedTimestamp": "2018-08-30T21:42:18Z" 
            }
        }
    }
}
```

## `DeregisterOrganizationalUnit`
<a name="deregister-organizational-unit"></a>

此生命週期事件會記錄 AWS Control Tower 是否成功停用 OU 上的控管功能。此事件對應於 AWS Control Tower `DeregisterOrganizationalUnit` CloudTrail 事件。生命週期事件日誌包含 AWS Control Tower 已停用其控管功能的 `organizationalUnitId` OU 的 `organizationalUnitName`和 。

```
{
    "version": "0",
    "id": "999cccaa-eaaa-0000-1111-123456789012",    
    "detail-type": "AWS Service Event via CloudTrail",
    "source": "aws.controltower",
    "account": "XXXXXXXXXXXX",                  
    "time": "2018-08-30T21:42:18Z", 
    "region": "us-east-1",            
    "resources": [ ],
    "detail": {
        "eventVersion": "1.05",
        "userIdentity": {
            "accountId": "XXXXXXXXXXXX",              
            "invokedBy": "AWS Internal"
        },
        "eventTime": "2018-08-30T21:42:18Z",               
        "eventSource": "controltower.amazonaws.com",
        "eventName": "DeregisterOrganizationalUnit",     
        "awsRegion": "us-east-1",                       
        "sourceIPAddress": "AWS Internal",
        "userAgent": "AWS Internal",
        "eventID": "0000000-0000-0000-1111-123456789012", 
        "readOnly": false,
        "eventType": "AwsServiceEvent",
        "serviceEventDetails": {
            "deregisterOrganizationalUnitStatus": {                 
                "state": "SUCCEEDED",               
                "message": "AWS Control Tower successfully deregistered an organizational unit, and enabled mandatory guardrails on the new organizational unit.",
                "organizationalUnit" :                        
                  {
                    "organizationalUnitName": "Test",                   // Foundational OU name.
                    "organizationalUnitId": "ou-adpf-302pk332"          // Foundational OU ID.
                  },
                "requestedTimestamp": "2018-08-30T21:42:18Z", 
                "completedTimestamp": "2018-08-30T21:42:18Z"  
            }
            }
        }
    }
```

## `PrecheckOrganizationalUnit`
<a name="precheck-organizational-unit"></a>

此生命週期事件會記錄 AWS Control Tower 是否在 OU 上成功執行預先檢查。此事件對應於 AWS Control Tower `PrecheckOrganizationalUnit` CloudTrail 事件。生命週期事件日誌包含 `Id`、 `Name`和 `failedPrechecks`值的欄位，適用於 AWS Control Tower 在 OU 註冊程序期間執行預先檢查的每個資源。

事件日誌也包含執行預先檢查之巢狀帳戶的相關資訊，包括 `accountName`、 `accountId`和 `failedPrechecks` 欄位。

如果`failedPrechecks`值為空，表示該資源的所有預先檢查都已成功傳遞。
+ 只有在發生預先檢查失敗時，才會發出此事件。
+ 如果您要註冊空的 OU，則不會發出此事件。

事件範例：

```
{
  "eventVersion": "1.08",
  "userIdentity": {
    "accountId": "XXXXXXXXXXXX",
    "invokedBy": "AWS Internal"
  },
  "eventTime": "2021-09-20T22:45:43Z",
  "eventSource": "controltower.amazonaws.com",
  "eventName": "PrecheckOrganizationalUnit",
  "awsRegion": "us-west-2",
  "sourceIPAddress": "AWS Internal",
  "userAgent": "AWS Internal",
  "eventID": "b41a9d67-0da4-4dc5-a87a-25fa19dc5305",
  "readOnly": false,
  "eventType": "AwsServiceEvent",
  "managementEvent": true,
  "recipientAccountId": "XXXXXXXXXXXX",
  "serviceEventDetails": {
    "precheckOrganizationalUnitStatus": {
      "organizationalUnit": {
        "organizationalUnitName": "Ou-123",
        "organizationalUnitId": "ou-abcd-123456",
        "failedPrechecks": [
            "SCP_CONFLICT"
          ]
      },
      "accounts": [
        {
          "accountName": "Child Account 1",
          "accountId": "XXXXXXXXXXXX",
          "failedPrechecks": [
            "FAILED_TO_ASSUME_ROLE"
          ]
        },
        {
          "accountName": "Child Account 2",
          "accountId": "XXXXXXXXXXXX",
          "failedPrechecks": [
            "FAILED_TO_ASSUME_ROLE"
          ]
        },
        {
          "accountName": "Management Account",
          "accountId": "XXXXXXXXXXXX",
          "failedPrechecks": [
            "MISSING_PERMISSIONS_AF_PRODUCT"
          ]
        },
        {
          "accountName": "Child Account 3",
          "accountId": "XXXXXXXXXXXX",
          "failedPrechecks": []
        },
        ...
      ],
      "state": "FAILED",
      "message": "AWS Control Tower failed to register an organizational unit due to pre-check failures. Go to the OU details page to download a list of failed pre-checks for the OU and accounts within.",
      "requestedTimestamp": "2021-09-20T22:44:02+0000",
      "completedTimestamp": "2021-09-20T22:45:43+0000"
    }
  },
  "eventCategory": "Management"
}
```

## `EnableBaseline`
<a name="enable-baseline-lfc"></a>

此生命週期事件會記錄 AWS Control Tower 是否成功啟用 OU 下目標成員帳戶的基準。此事件對應至 AWS Control Tower `RegisterOrganizationalUnit`或 `EnableBaseline` CloudTrail 事件。生命週期事件日誌包含已啟用的基準及其版本、已啟用基準`targetIdentifier`的 、父 OU 上已啟用基準`parentIdentifier`的 ，以及`statusSummary`顯示 SUCCEEDED 或 FAILED 狀態的 ，以及操作的其他參數和時間戳記。

```
{
    "eventVersion": "1.11",
    "userIdentity": {
        "accountId": "XXXXXXXXXXXX",
        "invokedBy": "AWS Internal"
    },
    "eventTime": "2025-02-10T17:14:57Z",
    "eventSource": "controltower.amazonaws.com",
    "eventName": "EnableBaseline",
    "awsRegion": "us-east-2",
    "sourceIPAddress": "AWS Internal",
    "userAgent": "AWS Internal",
    "requestParameters": null,
    "responseElements": null,
    "eventID": "366911a2-4fa6-4e4a-ac2b-280f627e0027",
    "readOnly": false,
    "eventType": "AwsServiceEvent",
    "managementEvent": true,
    "recipientAccountId": "XXXXXXXXXXXX",
    "serviceEventDetails": {
        "enableBaselineStatus": {
            "enabledBaselineDetails": {
                "arn": "arn:aws:controltower:us-east-2:XXXXXXXXXXXX:enabledbaseline/XXXXXXXXXXXXXXXX",
                "parentIdentifier": "arn:aws:controltower:us-east-2:XXXXXXXXXXXX:enabledbaseline/XXXXXXXXXXXXXXXX",
                "targetIdentifier": "arn:aws:organizations::XXXXXXXXXXXX:account/o-ern76xmzvf/XXXXXXXXXXXX",
                "baselineIdentifier": "arn:aws:controltower:us-east-2::baseline/XXXXXXXXXXXXXXX",
                "baselineVersion": "4.0",
                "statusSummary": {
                    "lastOperationIdentifier": "37f5eb68-e5b9-4c70-ae76-4ca15f6b16de",
                    "status": "SUCCEEDED"
                },
                "parameters": [
                    {
                        "key": "IdentityCenterEnabledBaselineArn",
                        "value": {
                            "untyped": {
                                "object": "arn:aws:controltower:us-east-2:XXXXXXXXXXXX:enabledbaseline/XXXXXXXXXXXXXXXX"                            }
                        }
                    }
                ]
            },
            "requestedTimestamp": "2025-02-10T17:07:09+0000",
            "completedTimestamp": "2025-02-10T17:14:57+0000"
        }
    },
    "eventCategory": "Management"
}
```

## `ResetEnabledBaseline`
<a name="reset-enabled-baseline-lfc"></a>

此生命週期事件會記錄 AWS Control Tower 是否成功重設 OU 下目標成員帳戶上已啟用的現有基準。此事件對應至 AWS Control Tower `RegisterOrganizationalUnit`或 `ResetEnabledBaseline` CloudTrail 事件。生命週期事件日誌包含已啟用的基準及其版本、已啟用基準`targetIdentifier`的 、父 OU 上已啟用基準`parentIdentifier`的 ，以及`statusSummary`顯示 SUCCEEDED 或 FAILED 狀態的 ，以及操作的其他參數和時間戳記。

```
{
    "eventVersion": "1.11",
    "userIdentity": {
        "accountId": "XXXXXXXXXXXX",
        "invokedBy": "AWS Internal"
    },
    "eventTime": "2025-02-10T21:17:55Z",
    "eventSource": "controltower.amazonaws.com",
    "eventName": "ResetEnabledBaseline",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "AWS Internal",
    "userAgent": "AWS Internal",
    "requestParameters": null,
    "responseElements": null,
    "eventID": "c01a32e1-13ab-4b46-8f1b-00699ef6f989",
    "readOnly": false,
    "eventType": "AwsServiceEvent",
    "managementEvent": true,
    "recipientAccountId": "XXXXXXXXXXXX",
    "serviceEventDetails": {
        "resetEnabledBaselineStatus": {
            "enabledBaselineDetails": {
                "arn": "arn:aws:controltower:us-west-2:XXXXXXXXXXXX:enabledbaseline/XXXXXXXXXXXXXXXX",
                "parentIdentifier": "arn:aws:controltower:us-west-2:XXXXXXXXXXXX:enabledbaseline/XXXXXXXXXXXXXXXX",
                "targetIdentifier": "arn:aws:organizations::XXXXXXXXXXXX:account/o-0uh2kplf6d/XXXXXXXXXXXX",
                "baselineIdentifier": "arn:aws:controltower:us-west-2::baseline/XXXXXXXXXXXXXXX",
                "baselineVersion": "1.0",
                "statusSummary": {
                    "lastOperationIdentifier": "3e364c89-89fa-42b8-9776-9f7cc47ba1fa",
                    "status": "SUCCEEDED"
                },
                "parameters": []
            },
            "requestedTimestamp": "2025-02-10T21:14:24Z",
            "completedTimestamp": "2025-02-10T21:17:54+0000"
        }
    },
    "eventCategory": "Management"
}
```

## `UpdateEnabledBaseline`
<a name="update-enabled-baseline-lfc"></a>

此生命週期事件會記錄 AWS Control Tower 是否成功更新 OU 下目標成員帳戶上已啟用的現有基準。此事件對應至 AWS Control Tower `RegisterOrganizationalUnit`或 `UpdateEnabledBaseline` CloudTrail 事件。生命週期事件日誌包含已啟用的基準及其版本、已啟用基準`targetIdentifier`的 、父 OU 上已啟用基準`parentIdentifier`的 ，以及`statusSummary`顯示 SUCCEEDED 或 FAILED 狀態的 ，以及操作的其他參數和時間戳記。

```
{
    "eventVersion": "1.11",
    "userIdentity": {
        "accountId": "XXXXXXXXXXXX",
        "invokedBy": "AWS Internal"
    },
    "eventTime": "2025-02-10T19:45:28Z",
    "eventSource": "controltower.amazonaws.com",
    "eventName": "UpdateEnabledBaseline",
    "awsRegion": "us-east-2",
    "sourceIPAddress": "AWS Internal",
    "userAgent": "AWS Internal",
    "requestParameters": null,
    "responseElements": null,
    "eventID": "514f2aff-1a99-4912-bda1-0d4d6662c96e",
    "readOnly": false,
    "eventType": "AwsServiceEvent",
    "managementEvent": true,
    "recipientAccountId": "XXXXXXXXXXXX",
    "serviceEventDetails": {
        "updateEnabledBaselineStatus": {
            "enabledBaselineDetails": {
                "arn": "arn:aws:controltower:us-east-2:XXXXXXXXXXXX:enabledbaseline/XXXXXXXXXXXXXXXX",
                "parentIdentifier": "arn:aws:controltower:us-east-2:XXXXXXXXXXXX:enabledbaseline/XXXXXXXXXXXXXXXX",
                "targetIdentifier": "arn:aws:organizations::XXXXXXXXXXXX:account/o-ern76xmzvf/XXXXXXXXXXXX",
                "baselineIdentifier": "arn:aws:controltower:us-east-2::baseline/XXXXXXXXXXXXXXX",
                "baselineVersion": "4.0",
                "statusSummary": {
                    "lastOperationIdentifier": "ba3de28f-83fb-4c9a-8a8c-a4e15fac2c41",
                    "status": "SUCCEEDED"
                },
                "parameters": [
                    {
                        "key": "IdentityCenterEnabledBaselineArn",
                        "value": {
                            "untyped": {
                                "object": "arn:aws:controltower:us-east-2:XXXXXXXXXXXX:enabledbaseline/XXXXXXXXXXXXXXXX"                            }
                        }
                    }
                ]
            },
            "requestedTimestamp": "2025-02-10T19:39:35+0000",
            "completedTimestamp": "2025-02-10T19:45:28+0000"
        }
    },
    "eventCategory": "Management"
}
```

## `DisableBaseline`
<a name="disable-baseline-lfc"></a>

此生命週期事件會記錄 AWS Control Tower 是否成功停用 OU 下目標成員帳戶上已啟用的現有基準。此事件對應於 AWS Control Tower `DisableBaseline` CloudTrail 事件。生命週期事件日誌包含已啟用的基準及其版本、已啟用基準`targetIdentifier`的 、在父 OU 上啟用`parentIdentifier`基準的 ，以及`statusSummary`顯示 SUCCEEDED 或 FAILED 狀態的 ，以及操作的其他參數和時間戳記。

```
{
    "eventVersion": "1.11",
    "userIdentity": {
        "accountId": "XXXXXXXXXXXX",
        "invokedBy": "AWS Internal"
    },
    "eventTime": "2025-03-14T00:50:58Z",
    "eventSource": "controltower.amazonaws.com",
    "eventName": "DisableBaseline",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "AWS Internal",
    "userAgent": "AWS Internal",
    "requestParameters": null,
    "responseElements": null,
    "eventID": "704794c4-a32e-4960-8386-c7efaa5a22a1",
    "readOnly": false,
    "eventType": "AwsServiceEvent",
    "managementEvent": true,
    "recipientAccountId": "XXXXXXXXXXXX",
    "serviceEventDetails": {
        "disableBaselineStatus": {
            "enabledBaselineDetails": {
                "arn": "arn:aws:controltower:us-west-2:XXXXXXXXXXXX:enabledbaseline/XXXXXXXXXXXXXXXX",
                "parentIdentifier": "arn:aws:controltower:us-west-2:XXXXXXXXXXXX:enabledbaseline/XXXXXXXXXXXXXXXX",
                "targetIdentifier": "arn:aws:organizations::XXXXXXXXXXXX:account/o-0uh2kplf6d/XXXXXXXXXXXX",
                "baselineIdentifier": "arn:aws:controltower:us-west-2::baseline/XXXXXXXXXXXXXXX",
                "baselineVersion": "1.0",
                "statusSummary": {
                    "lastOperationIdentifier": "7b895594-0edb-48bc-9f3d-d88c2ad618df",
                    "status": "SUCCEEDED"
                },
                "parameters": []
            },
            "baselineDetails": {
                "arn": "arn:aws:controltower:us-west-2:XXXXXXXXXXXX:enabledbaseline/XXXXXXXXXXXXXXXX",
                "parentIdentifier": "arn:aws:controltower:us-west-2:XXXXXXXXXXXX:enabledbaseline/XXXXXXXXXXXXXXXX",
                "targetIdentifier": "arn:aws:organizations::XXXXXXXXXXXX:account/o-0uh2kplf6d/XXXXXXXXXXXX",
                "baselineIdentifier": "arn:aws:controltower:us-west-2::baseline/XXXXXXXXXXXXXXX",
                "baselineVersion": "1.0",
                "statusSummary": {
                    "lastOperationIdentifier": "7b895594-0edb-48bc-9f3d-d88c2ad618df",
                    "status": "SUCCEEDED"
                },
                "parameters": []
            },
            "requestedTimestamp": "2025-03-14T00:49:13Z",
            "completedTimestamp": "2025-03-14T00:50:58+0000"
        }
    },
    "eventCategory": "Management"
}
```

# 搭配 使用 AWS 使用者通知 AWS Control Tower
<a name="using-user-notifications"></a>

您可以使用[AWS 使用者通知](https://docs.aws.amazon.com/notifications/latest/userguide/what-is.html)來設定交付管道，以接收事件的 AWS Control Tower 通知。當事件符合您指定的規則時，便會收到通知。您可以透過多個管道接收事件的通知，包括電子郵件、[聊天應用程式中的 Amazon Q Developer](https://docs.aws.amazon.com/chatbot/latest/adminguide/what-is.html) 聊天通知，或[AWS 主控台行動應用程式](https://docs.aws.amazon.com/consolemobileapp/latest/userguide/what-is-consolemobileapp.html)推送通知。您也可以在主控台通知中心查看通知。

AWS 使用者通知支援彙總，可減少您在特定事件期間收到的通知數量。通知也會顯示在主控台通知中心。

透過 AWS 使用者通知而非 EventBridge 訂閱通知的優點包括：
+ 友善的使用者介面 (UI)。
+ 與 AWS 主控台整合，位於全域導覽列的鈴鐺/通知區域。
+ 原生支援電子郵件通知，不需要設定 Amazon SNS。
+ 最值得注意的是，支援行動推播通知， AWS 使用者通知獨有。

例如，在 Security Hub CSPM 嚴重和高嚴重性問題清單的情況下，您可能希望收到的通知類型之一。JSON 中用來設定通知訂閱的程式碼片段可能如下所示：

```
{
  "detail": {
    "findings": {
      "Compliance": {
        "Status": ["FAILED", "WARNING", "NOT_AVAILABLE"]
      },
      "RecordState": ["ACTIVE"],
      "Severity": {
        "Label": ["CRITICAL", "HIGH"]
      },
      "Workflow": {
        "Status": ["NEW", "NOTIFIED"]
      }
    }
  }
}
```

**事件篩選**
+ 您可以使用 AWS 使用者通知主控台上提供的篩選條件，依服務和名稱篩選事件。
+ 如果您從 JSON 程式碼建立自己的 EventBridge 篩選條件，您可以依特定屬性篩選事件。

**範例 AWS Control Tower 事件**

以下是 的廣義範例事件 AWS Control Tower。
+ 這是 EventBridge 事件。
+ 您可以使用 AWS 使用者通知訂閱 EventBridge 事件 （例如此事件）。

```
{
    "version": "0",
    "id": "<id>", // alphanumeric string
    "detail-type": "AWS Service Event via CloudTrail",
    "source": "aws.controltower",
    "account": "<account ID>", // Management account ID. 
    "time": "<date>", // Format: yyyy-MM-dd'T'hh:mm:ssZ 
    "region": "<region>", // AWS Control Tower home region.
    "resources": [],
    "detail": {
        "eventVersion": "1.05",
        "userIdentity": {
            "accountId": "121212121212",
            "invokedBy": "AWS Internal"
        },
        "eventTime": "2018-08-30T21:42:18Z", // Timestamp when call was made. Format: yyyy-MM-dd'T'hh:mm:ssZ.
        "eventSource": "controltower.amazonaws.com",
        "eventName": "<event name>", // one of the 9 event names in https://docs.aws.amazon.com/controltower/latest/userguide/lifecycle-events.html
        "awsRegion": "<region>",
        "sourceIPAddress": "AWS Internal",
        "userAgent": "AWS Internal",
        "eventID": "<id>",
        "readOnly": false,
        "eventType": "AwsServiceEvent",
        "serviceEventDetails": {
            // the contents of this object vary depending on the event subtype and event state
        }
    }
}
```