AWS Control Tower
ユーザーガイド

AWS Control Tower の仕組み

次に、AWS Control Tower 仕組みについて大まかに説明します。Landing Zone は、すべての AWS リソースに対する優れた設計のマルチアカウント環境です。この環境を使用して、すべての AWS アカウントでコンプライアンス規制を適用できます。

共有アカウントは何ですか

AWS Control Tower では、3 つの共有アカウント (マスターアカウント、ログアーカイブアカウント、および監査アカウント) があります。これらは、Account Factory にプロビジョニングされません。

Landing Zone を作成すると、多くの AWS リソースが作成されます。AWS Control Tower を使用するには、このガイドで説明されたサポートされている方法以外で、これらの AWS Control Tower マネージドリソースを変更または削除することはできません。これらのリソースを変更または削除すると、Landing Zone の状態が不明になります。

重要

強く推奨されるガイダンスでガードレールを有効にすると、アカウント内で AWS Control Tower マネージド AWS リソースが作成されます。AWS Control Tower によって作成されたリソースを変更または削除しないでください。これにより、ガードレールの状態が不明になる可能性があります。詳細については、「ガードレールリファレンス」を参照してください。

マスターアカウントとは何ですか

これは、Landing Zone 専用に作成したアカウントです。このアカウントは、Landing Zone でのすべての請求に使用されます。また、このアカウントは、OU とガードレールの管理だけでなく、Account Factory プロビジョニングとアカウントに使用することもできます。

Landing Zone をセットアップすると、マスターアカウント内で以下の AWS リソースが作成されます。

AWS サービス リソースタイプ リソース名
AWS Organizations アカウント

audit

log archive

AWS Organizations OU

Core

Custom

AWS Organizations サービスコントロールポリシー

aws-guardrails-*

AWS CloudFormation スタック AWSControlTowerBP-BASELINE-CLOUDTRAIL-MASTER
AWS CloudFormation StackSets

AWSControlTowerBP-BASELINE-CLOUDTRAIL

AWSControlTowerBP-BASELINE-CLOUDWATCH

AWSControlTowerBP-BASELINE-CONFIG

AWSControlTowerBP-BASELINE-ROLES

AWSControlTowerBP-BASELINE-SERVICE-ROLES

AWSControlTowerBP-SECURITY-TOPICS

AWSControlTowerGuardrailAWS-GR-AUDIT-BUCKET-PUBLIC-READ-PROHIBITED

AWSControlTowerGuardrailAWS-GR-AUDIT-BUCKET-PUBLIC-WRITE-PROHIBITED

AWSControlTowerLoggingResources

AWSControlTowerSecurityResources

AWS Service Catalog 製品 AWS Control Tower Account Factory
AWS CloudTrail 証跡 aws-controltower-BaselineCloudTrail
Amazon CloudWatch CloudWatch Logs aws-controltower/CloudTrailLogs
AWS Identity and Access Management ロール

AWSControlTowerAdmin

AWSControlTowerStackSetRole

AWSControlTowerCloudTrailRolePolicy

AWS Identity and Access Management ポリシー

AWSControlTowerServiceRolePolicy

AWSControlTowerAdminPolicy

AWSControlTowerCloudTrailRolePolicy

AWSControlTowerStackSetRolePolicy

AWS シングルサインオン ディレクトリグループ

AWSAccountFactory

AWSAuditAccountAdmins

AWSControlTowerAdmins

AWSLogArchiveAdmins

AWSLogArchiveViewers

AWSSecurityAuditors

AWSSecurityAuditPowerUsers

AWSServiceCatalogAdmins

AWS シングルサインオン アクセス権限セット

AWSAdministratorAccess

AWSPowerUserAccess

AWSServiceCatalogAdminFullAccess

AWSServiceCatalogEndUserAccess

AWSReadOnlyAccess

AWSOrganizationsFullAccess

ログアーカイブアカウントとは何ですか

このアカウントは、Landing Zone のすべてのアカウントからの API アクティビティとリソース設定のログのリポジトリとして使用されます。

Landing Zone をセットアップすると、ログアーカイブアカウント内で以下の AWS リソースが作成されます。

AWS サービス リソースタイプ リソース名
AWS CloudFormation スタック

StackSet-AWSControlTowerGuardrailAWS-GR-AUDIT-BUCKET-PUBLIC-READ-PROHIBITED-

StackSet-AWSControlTowerGuardrailAWS-GR-AUDIT-BUCKET-PUBLIC-WRITE-PROHIBITED

StackSet-AWSControlTowerBP-BASELINE-CLOUDWATCH-

StackSet-AWSControlTowerBP-BASELINE-CONFIG-

StackSet-AWSControlTowerBP-BASELINE-CLOUDTRAIL-

StackSet-AWSControlTowerBP-BASELINE-SERVICE-ROLES-

StackSet-AWSControlTowerBP-BASELINE-ROLES-

StackSet-AWSControlTowerLoggingResources-

AWS Config AWS Config ルール

AWSControlTower_AWS-GR_AUDIT_BUCKET_PUBLIC_READ_PROHIBITED

AWSControlTower_AWS-GR_AUDIT_BUCKET_PUBLIC_WRITE_PROHIBIT

AWS CloudTrail 証跡 aws-controltower-BaselineCloudTrail
Amazon CloudWatch CloudWatch イベントルール aws-controltower-ConfigComplianceChangeEventRule
Amazon CloudWatch CloudWatch Logs

aws-controltower/CloudTrailLogs

/aws/lambda/aws-controltower-NotificationForwarder

AWS Identity and Access Management ロール

aws-controltower-AdministratorExecutionRole

aws-controltower-CloudWatchLogsRole

aws-controltower-ConfigRecorderRole

aws-controltower-ForwardSnsNotificationRole

aws-controltower-ReadOnlyExecutionRole

AWSControlTowerExecution

AWS Identity and Access Management ポリシー AWSControlTowerServiceRolePolicy
Amazon Simple Notification Service トピック aws-controltower-SecurityNotifications
AWS Lambda アプリケーション StackSet-AWSControlTowerBP-BASELINE-CLOUDWATCH-*
AWS Lambda 関数 aws-controltower-NotificationForwarder
Amazon Simple Storage Service バケット

aws-controltower-logs-*

aws-controltower-s3-access-logs-*

監査アカウントとは何ですか

監査アカウントは、セキュリティチームとコンプライアンスチームに対して Landing Zone のすべてのアカウントへの読み書きアクセスを許可するように設計された制限付きのアカウントです。

Landing Zone をセットアップすると、監査アカウント内で以下の AWS リソースが作成されます。

AWS サービス リソースタイプ リソース名
AWS CloudFormation スタック

StackSet-AWSControlTowerGuardrailAWS-GR-AUDIT-BUCKET-PUBLIC-READ-PROHIBITED-

StackSet-AWSControlTowerGuardrailAWS-GR-AUDIT-BUCKET-PUBLIC-WRITE-PROHIBITED-

StackSet-AWSControlTowerBP-BASELINE-CLOUDWATCH-

StackSet-AWSControlTowerBP-BASELINE-CONFIG-

StackSet-AWSControlTowerBP-BASELINE-CLOUDTRAIL-

StackSet-AWSControlTowerBP-BASELINE-SERVICE-ROLES-

StackSet-AWSControlTowerBP-SECURITY-TOPICS-

StackSet-AWSControlTowerBP-BASELINE-ROLES-

StackSet-AWSControlTowerSecurityResources-*

AWS Config アグリゲータ aws-controltower-GuardrailsComplianceAggregator
AWS Config AWS Config ルール

AWSControlTower_AWS-GR_AUDIT_BUCKET_PUBLIC_READ_PROHIBITED

AWSControlTower_AWS-GR_AUDIT_BUCKET_PUBLIC_WRITE_PROHIBITED

AWS CloudTrail 証跡 aws-controltower-BaselineCloudTrail
Amazon CloudWatch CloudWatch イベントルール aws-controltower-ConfigComplianceChangeEventRule
Amazon CloudWatch CloudWatch Logs

aws-controltower/CloudTrailLogs

/aws/lambda/aws-controltower-NotificationForwarder

AWS Identity and Access Management ロール

aws-controltower-AdministratorExecutionRole

aws-controltower-CloudWatchLogsRole

aws-controltower-ConfigRecorderRole

aws-controltower-ForwardSnsNotificationRole

aws-controltower-ReadOnlyExecutionRole

aws-controltower-SecurityAdministratorRole

aws-controltower-SecurityReadOnlyRole

AWSControlTowerExecution

AWS Identity and Access Management ポリシー AWSControlTowerServiceRolePolicy
Amazon Simple Notification Service トピック

aws-controltower-AggregateSecurityNotifications

aws-controltower-AllConfigNotifications

aws-controltower-SecurityNotifications

AWS Lambda 関数 aws-controltower-NotificationForwarder

ガードレールの仕組み

ガードレールは、AWS 環境全体に継続的なガバナンスを提供する高レベルのルールです。各ガードレールは 1 つのルールを適用します。これは、わかりやすい言語で示されます。コンプライアンスのニーズは進化します。これに応じて、有効になっている選択的ガードレールまたは強く推奨されるガードレールを AWS Control Tower コンソールからいつでも変更できます。必須ガードレールは常に適用され、変更することはできません。

予防的ガードレールにより、アクションの発生が防止されます。たとえば、[Disallow policy changes to log archive (ログアーカイブのポリシー変更を禁止する)] ガードレールにより、ログアーカイブ共有アカウント内で IAM ポリシーの変更が防止されます。禁止されたアクションを実行しようとすると、拒否され、CloudTrail に記録されます。また、リソースも AWS Config に記録されます。

発見的ガードレールにより、特定のイベントが発生したときにそのイベントが検出され、アクションが CloudTrail に記録されます。たとえば、[Enable encryption for EBS volumes attached to EC2 instances (EC2 インスタンスにアタッチされた EBS ボリュームの暗号化を有効にする)] により、暗号化されていない Amazon EBS ボリュームが Landing Zone の EC2 インスタンスにアタッチされているかどうかが検出されます。

AWS リージョンと AWS Control Tower の連携の仕組み

現在、AWS Control Tower は次の AWS リージョンでサポートされています。

  • 米国東部(バージニア北部)

  • 米国東部 (オハイオ)

  • 米国西部 (オレゴン)

  • 欧州 (アイルランド)

Landing Zone を作成すると、AWS マネジメントコンソール へのアクセスに使用しているリージョンが AWS Control Tower のホーム AWS リージョンになります。作成プロセス中に、一部のリソースがホーム AWS リージョンにプロビジョニングされます。その他のリソース (OU や AWS アカウント) はグローバルです。

現在、すべての予防的ガードレールはグローバルに使用できます。ただし、発見的ガードレールは AWS Control Tower がサポートされているリージョンでのみ機能します。

AWS Control Tower がロールと連携してアカウントを作成および管理する方法

AWS Control Tower は、AWS Organizations の CreateAccount API を呼び出して顧客のアカウントを作成します。AWS Organizations は、アカウントを作成する際に、このアカウント内にロールを作成します。このロールに対して AWS Control Tower は API にパラメータを渡すことで名前を付けます。名前は AWSControlTowerExecution となります。

AWS Control Tower は、Account Factory によって作成されたすべてのアカウントの AWSControlTowerExecution ロールを引き受けます。AWS Control Tower は、このロールを使用してアカウントのベースライニングを行い、必須ガードレール (および他の有効なガードレール) を適用します。これにより、他のロールが作成されます。これらのロールは、次に AWS Config などの他のサービスによって使用されます。

注記

アカウントのベースライニングは、設計図とガードレールを設定するプロセスです。ベースライニングのプロセスでは、設計図のデプロイの一部として、一元化されたログ記録とセキュリティ監査のロールもアカウントにセットアップします。