

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# AWS Control Tower でのログ記録とモニタリング
<a name="logging-and-monitoring"></a>

モニタリングを使用すると、潜在的なインシデントに対して計画を立て、対応することができます。モニタリングアクティビティの結果が、ログファイルに保存されます。したがって、ログ記録とモニタリングは密接に関連した概念であり、AWS Control Tower における Well-Architected の重要な要素です。

ランディングゾーンをセットアップすると作成される共有アカウントの 1 つが、*ログアーカイブ*アカウントです。これは、すべての共有アカウントとメンバーアカウントのログを含む、すべてのログを一元的に収集することに特化しています。ログファイルは Amazon S3 バケットに保存されます。これらのログファイルを参照することで、管理者と監査人は発生したアクションとイベントを確認できます。

ベストプラクティスとして、マルチポイント障害が発生した場合に簡単にデバッグできるように、AWSセットアップのすべての部分からモニタリングデータをログに収集することをお勧めします。AWSには、ランディングゾーンのリソースとアクティビティをモニタリングするためのツールがいくつか用意されています。

例えば、コントロールのステータスは常にモニタリングされます。このステータスは、AWS Control Tower コンソール内で、または [AWS Control Tower API](https://docs.aws.amazon.com//controltower/latest/APIReference/API_Operations.html) を使用してプログラムにより、一目で確認できます。Account Factory でプロビジョニングしたアカウントの正常性とステータスも常にモニタリングされます。

**ログに記録されたアクションを [アクティビティ] ページから表示する**

AWS Control Tower コンソールの **[アクティビティ]** ページには、AWS Control Tower 管理アカウントのアクション概要が表示されます。AWS Control Tower の **[Activities]** (アクティビティ) ページに移動するには、左側のナビゲーションから **[Activities]** (アクティビティ) を選択します。

**アクティビティ**ページに表示されるアクティビティは、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 の管理アカウントや組織のメンバーアカウントのアクションなど、すべてのアクションがログに記録されます。管理アカウントのアクションとイベントは、コンソールの **[Activities]** (アクティビティ) ページに表示されます。メンバーアカウントのアクションとイベントは、ログアーカイブファイルで表示できます。

**組織レベルの証跡**

ランディングゾーンをセットアップすると、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 Control Tower をモニタリングし、問題が発生したときに報告し、必要に応じて自動アクションを実行するための以下のモニタリングツールAWSが用意されています。
+ *Amazon CloudWatch* は、AWSリソースと で実行されるアプリケーションをAWSリアルタイムでモニタリングします。メトリクスの収集と追跡、カスタマイズしたダッシュボードの作成、および指定したメトリクスが指定したしきい値に達したときに通知またはアクションを実行するアラームの設定を行うことができます。例えば、CloudWatch で Amazon EC2 インスタンスの CPU 使用率などのメトリクスを追跡し、必要に応じて新しいインスタンスを自動的に起動できます。詳細については、「[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 インサイトを使用して、アカウントに対する CloudTrail アクティビティを表示およびクエリできます。このようなアクティビティには、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 のアクションをイベントとしてキャプチャします。追跡を作成する場合は、AWS Control Tower のイベントを含めた CloudTrail イベントの Simple Storage Service (Amazon S3) バケットへの継続的な配信を有効にすることができます。

追跡を設定しない場合でも、CloudTrail コンソールの **[Event history]** (イベント履歴) で最新のイベントを表示できます。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>

CloudTrail は、 AWS アカウントの作成時にアカウントで有効になります。AWS Control Tower でサポートされているイベントアクティビティが発生すると、そのアクティビティは **[Event history]** (イベント履歴) で AWS のその他サービスのイベントと共に CloudTrail イベントに記録されます。 AWS アカウントで最近のイベントを表示、検索、ダウンロードできます。詳細については、[CloudTrail イベント履歴でのイベントの表示](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 Control Tower のイベントなど、 AWS アカウントのイベントの継続的な記録については、証跡を作成します。*証跡*により、ログファイルを CloudTrail で Amazon S3 バケットに配信できます。デフォルトでは、コンソールで証跡を作成すると、すべての AWS リージョンに証跡が適用されます。証跡は、 AWS パーティション内のすべてのリージョンからのイベントをログに記録し、指定した Amazon S3 バケットにログファイルを配信します。さらに、CloudTrail ログで収集したイベントデータをより詳細に分析し、それに基づいて対応するため、他の AWS サービスを構成できます。詳細については、次を参照してください: 
+ [証跡の作成のための概要](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 ログファイルに記録します。

**パブリック API**
+ AWS Control Tower パブリック API の一覧と各 API の詳細については、「[AWS Control Tower API Reference](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>

 追跡は、指定した Simple Storage Service (Amazon S3) バケットにイベントをログファイルとして配信するように設定できるものです。CloudTrail のログファイルは、単一か複数のログエントリを含みます。イベントはあらゆるソースからの単一のリクエストを表し、リクエストされたアクション、アクションの日時、リクエストのパラメータなどの情報があります。ログファイルに CloudTrail イベントが特定の順序で表示されるわけではありません。

次の例は、アクションを開始したユーザーの ID のレコードなど、`SetupLandingZone` AWS Control Tower イベントの一般的なログファイルエントリの構造を示す CloudTrail ログエントリを示しています。

```
{
  "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 Control Tower アカウントのリソースの変更 AWS Config を記録して請求する方法について説明します。この情報は、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 ロールなどの一部のグローバルリソースは、リージョンごとに 1 回記録されます。たとえば、5 つのリージョンで運用されている登録済みアカウントに新しい IAM ロールを作成すると、 はリージョンごとに 1 つずつ、5 CIs AWS Config を生成します。Route 53 ホストゾーンなどの他のグローバルリソースは、すべてのリージョンで 1 回だけ記録されます。たとえば、登録済みアカウントで新しい Route 53 ホストゾーンを作成すると、そのアカウントに選択されているリージョンの数に関係なく、 AWS Config が CI を 1 回生成します。これらのタイプのリソースを区別するのに役立つリストについては、「[同じリソースが複数回記録されている](monitoring-with-config.md#duplicate-configuration-items)」を参照してください。

**注記**  
AWS Control Tower が と連携する場合 AWS Config、リージョンは AWS Control Tower によって管理されるか、管理解除され、アカウントがそのリージョンで動作している場合は変更が記録され AWS Config ます。

**AWS Config がリソース内の 2 種類の関係を検出する**

AWS Config は、リソース間の*直接*関係と*間接*関係を区別します。リソースが他のリソースの**Describe** API 呼び出しで返された場合、それらのリソースは直接的な関係として記録されます。別のリソースと直接関係にあるリソースを変更しても、 AWS Config は両方のリソースの CI を作成しません。

たとえば、Amazon EC2 インスタンスを作成し、API でネットワークインターフェイスを作成する必要がある場合、 AWS Config では、Amazon EC2 インスタンスはネットワークインターフェイスと直接的な関係があると見なされます。その結果、 は 1 つの CI のみ AWS Config を生成します。

AWS Config は、*間接的*な関係であるリソース関係の個別の変更を記録します。たとえば、セキュリティグループを作成し、セキュリティグループの一部である関連付けられた Amazon EC2 インスタンスを追加すると、 は 2 つの CIs AWS Config を生成します。

直接的な関係と間接的な関係の詳細については、[「リソースに関する直接的な関係と間接的な関係とは何ですか?」](https://docs.aws.amazon.com//config/latest/developerguide/faq.html#faq-0)を参照してください。

[リソース関係のリストは、](https://docs.aws.amazon.com//config/latest/developerguide/resource-config-reference.html) AWS Config ドキュメントで確認できます。

## 登録済みアカウントの 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 データを表示するには、 CLI AWS を使用するか、他の 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`

詳細については、[`get-config-history` の API ドキュメント](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)」と「[Visualizing AWS Config data using Amazon Athena and Quick](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 Control Tower AWS Config で を使用する際に発生する可能性のあるいくつかの問題について説明します。

### 高 AWS Config コスト
<a name="high-config-costs"></a>

ワークフローにリソースを頻繁に作成、更新、または削除するプロセスが含まれている場合、またはリソースを大量に処理する場合、そのワークフローによって多数の CI が生成されることが考えられます。非本番アカウントでこれらのプロセスを実行する場合、アカウントの登録解除を検討してください。そのアカウントの 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 が動作しているリージョンごとに特定のグローバルリソースを 1 回記録 AWS Config できます。たとえば、 AWS Config が 8 つのリージョンで有効になっている場合、各ロールは 8 回記録されます。

**以下のリソースは、 AWS Config が動作しているリージョンごとに 1 回記録されます。**
+ `AWS::IAM::Group` 
+ `AWS::IAM::Policy` 
+ `AWS::IAM::Role` 
+  `AWS::IAM::User`

**他のグローバルリソースは 1 回のみ記録されます。1 回記録されたリソースの例を次に示します。**
+ `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>

特定のリソースは、他のリソースと依存関係があります。これらの関係は、**直接的または間接的**です。非推奨の間接的な関係のリストについては、 [FAQ 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 アクションの完了を記録することです。**ライフサイクルイベントは、組織単位 (OU) またはアカウントに関連するランディングゾーン、ベースライン、コントロールなど、AWS Control Tower が作成または管理するリソースに適用されます。

**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 のライフサイクルイベントには、主に次の 2 つの利点があります。**
+ ライフサイクルイベントは 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]** (アクティビティ) ページに移動するには、左側のナビゲーションペインから **[Activities]** (アクティビティ) を選択します。
+ 特定のイベントの詳細を表示するには、イベントを選択し、右上にある **[View details]** (詳細を表示) ボタンを選択します。

 AWS Control Tower ライフサイクルイベントをワークフローに統合する方法の詳細については、こちらのブログ記事「[Using lifecycle events to track AWS Control Tower actions and trigger automated workflows](https://aws.amazon.com//blogs/mt/using-lifecycle-events-to-track-aws-control-tower-actions-and-trigger-automated-workflows/)」 (ライフサイクルイベントを使用して AWS Control Tower アクションを追跡し、自動化されたワークフローをトリガーする) を参照してください。

**CreateManagedAccount および UpdateManagedAccount ライフサイクルイベントの予想される動作**

 AWS Control Tower でアカウントを作成するか、アカウントを登録すると、これら 2 つのアクションは同じ内部 API を呼び出します。プロセス中にエラーが発生する場合、通常、エラーはアカウントが作成された後に完全にプロビジョニングされていない場合に発生します。エラーの後にアカウントを作成し直すと、またはプロビジョニングされた製品を更新しようとすると、AWS Control Tower はアカウントが既に存在しているものと認識します。

アカウントが存在するため、AWS Control Tower は再試行リクエストの終了時に `CreateManagedAccount` ライフサイクルイベントではなく `UpdateManagedAccount` ライフサイクルイベントを記録します。エラーが原因で、別の `CreateManagedAccount` イベントが表示されると予想されるかもしれませんが、`UpdateManagedAccount` ライフサイクルイベントが期待される望ましい動作です。

 自動化されたメソッドを使用して AWS Control Tower にアカウントを作成または登録する場合は、Lambda 関数をプログラムして **UpdateManagedAccount** ライフサイクルイベントに加えて **CreateManagedAccount** ライフサイクルイベントも検索します。

**ライフサイクルイベント名**

各ライフサイクルイベントには、生成元の AWS Control Tower アクション (AWS CloudTrail にも記録される) に対応する名前が付けられます。例えば、AWS Control Tower `CreateManagedAccount` CloudTrail イベントによって発生したライフサイクルイベントには、`CreateManagedAccount` と名前を付けます。

次の一覧に示す名前は、それぞれが `JSON` 形式でログに記録された詳細の例にリンクされています。これらの例で示す追加の詳細は、Amazon CloudWatch イベントログから取得したものです。

`JSON` はコメントをサポートしていませんが、例には説明の目的でいくつかのコメントを追加しています。コメントは先頭に「//」を付けて、例の右側に表示しています。

これらの例では、一部のアカウント名と組織名が隠されています。`accountId` は常に 12 桁の数字であり、例では「xxxxxxxxxxxx」に置き換えられています。`organizationalUnitID` は、文字と数字の一意の文字列です。例では、その形式を保持しています。
+ [`CreateManagedAccount`](#create-managed-account): このログには、Account Factory を使用して新しいアカウントを作成およびプロビジョニングするためのすべてのアクションを AWS Control Tower が正常に完了したかどうかが記録されます。
+ [`UpdateManagedAccount`](#update-managed-account): このログには、Account Factory を使用して以前に作成したアカウントに関連付けられているプロビジョニング済み製品を更新するためのすべてのアクションを 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): このログには、OU に対してガバナンス機能を有効にするためのすべてのアクションを AWS Control Tower が正常に完了したかどうかが記録されます。
+ [`DeregisterOrganizationalUnit`](#deregister-organizational-unit): このログには、OU に対してガバナンス機能を無効にするためのすべてのアクションを AWS Control Tower が正常に完了したかどうかが記録されます。
+ [`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 が Account Factory を使用して新しいアカウントを正常に作成およびプロビジョニングしたかどうかを記録します。このイベントは、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 が Account Factory を使用して以前に作成したアカウントに関連付けられているプロビジョニング済み製品を正常に更新したかどうかを記録します。このイベントは、AWS Control Tower `UpdateManagedAccount` 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",                                   // 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 が管理している OU のコントロールを AWS Control Tower が正常に有効化したかどうかを記録します。このイベントは、AWS Control Tower `EnableGuardrail` CloudTrail イベントに対応します。ライフサイクルイベントログには、コントロールの `guardrailId` と `guardrailBehavior`、コントロールを有効にした OU の `organizationalUnitName` と `organizationalUnitId` が含まれます。

```
{
    "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 が管理している OU のコントロールを AWS Control Tower が正常に無効化したかどうかを記録します。このイベントは、AWS Control Tower `DisableGuardrail` CloudTrail イベントに対応します。ライフサイクルイベントログには、コントロールの `guardrailId` と `guardrailBehavior`、コントロールを無効にした OU の `organizationalUnitName` と `organizationalUnitId` が含まれます。

```
{
    "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 イベントに対応します。ライフサイクルイベントログには、AWS Control Tower が管理アカウントから作成した組織の ID である `rootOrganizationalId` が含まれます。ログエントリには、AWS Control Tower がランディングゾーンの設定時に作成した、各 OU の `organizationalUnitName` と `organizationalUnitId`、各アカウントの `accountName` と `accountId` が含まれます。

```
{
    "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 イベントに対応します。ライフサイクルイベントログには、AWS Control Tower が管理する (更新された) 組織の ID である `rootOrganizationalId` が含まれます。ログエントリには、AWS Control Tower が最初のランディングゾーンの設定時に作成した各 OU の `organizationalUnitName` と `organizationalUnitId`、各アカウントの `accountName` と `accountId` が含まれます。

```
{
    "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 がそのガバナンス機能を有効にした OU の `organizationalUnitName` と `organizationalUnitId` が含まれます。

```
{
    "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 がそのガバナンス機能を無効にした OU `organizationalUnitName` と `organizationalUnitId` が含まれます。

```
{
    "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 イベントに対応します。ライフサイクルイベントログには、OU 登録プロセス中に AWS Control Tower が事前チェックを実行した各リソースの `Id`、`Name`、および `failedPrechecks` の値のフィールドが含まれます。

イベントログには、`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`、および SUCCEEDED または FAILED ステータスを示す `statusSummary` と、オペレーションの追加パラメータとタイムスタンプが含まれます。

```
{
    "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`、および SUCCEEDED または FAILED ステータスを示す `statusSummary` と、オペレーションの追加パラメータとタイムスタンプが含まれます。

```
{
    "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`、および SUCCEEDED または FAILED ステータスを示す `statusSummary` と、オペレーションの追加パラメータとタイムスタンプが含まれます。

```
{
    "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`、および SUCCEEDED または FAILED ステータスを示す `statusSummary` と、オペレーションの追加パラメータとタイムスタンプが含まれます。

```
{
    "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イベントの通知を受ける配信チャネルを設定できます。指定したルールにイベントが一致した場合に通知を受信します。イベントの通知は、Eメール、[チャットアプリケーション内の 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ユーザー通知は集約をサポートしているため、特定のイベント中に受け取る通知の数を減らすことができます。通知は、コンソール通知センターで表示することもできます。

EventBridge の代わりにAWSユーザー通知を通じて通知をサブスクライブする利点は次のとおりです。
+ わかりやすいユーザーインターフェイス (UI)。
+ グローバルナビゲーションバーのベル/通知エリアで、AWSコンソールとの統合。
+ E メール通知がネイティブにサポートされているため、Amazon SNS の設定が不要。
+ 特に、AWSユーザー通知を除くモバイルプッシュ通知のサポートです。

例えば、Security Hub CSPM の重大度が重大で重要度が高い場合、受信する通知のタイプは 1 つです。その通知サブスクリプションを設定するための 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
        }
    }
}
```