Contents
前提条件と事前確認
| 項目 | 必要な作業 | 参考ドキュメント |
|---|---|---|
| ルートユーザーの MFA | MFA を必ず有効化(仮想またはハードウェア) | 【IAM ベストプラクティス】 https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/id_credentials_mfa.html |
| AWS Organizations の有効化 | “All features” を選択し、組織全体で制御できる状態にする | https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_org_create.html |
| 初期 IAM 権限 | AdministratorAccess(セットアップ時) → 以降は最小権限へ移行 ※「ControlTowerAdmin」ポリシーは公式には存在しません。代わりにカスタムロール AWSControlTowerExecution を使用します。 |
https://docs.aws.amazon.com/controltower/latest/userguide/setting-up.html#setup-permissions |
チェックリスト
- [ ] ルートアカウントに MFA が設定済みか(MFA デバイスが有効でテストコードが機能すること)
- [ ] Organizations が “All features” 状態で有効化され、マスターハブが作成されているか
- [ ] 初期セットアップ用 IAM ユーザー/ロールに
AdministratorAccessとAWSControlTowerExecutionが付与されているか
Control Tower のセットアップ手順
1. コンソールからの起動
- MFA が有効化されたルートまたは管理者ユーザーで AWS マネジメントコンソールにサインイン。
- サービス検索バーに 「Control Tower」 と入力し、表示されたカードをクリック。
UI は 2024‑2025 年版の「Landing zone の有効化」ウィザードが中心です。将来の画面変更は AWS が事前に通知しますので、公式リリースノートをご確認ください。
2. ウィザードの流れ(推奨設定)
| ステップ | 主な操作 | 推奨設定例 |
|---|---|---|
| リージョン選択 | 使用する AWS リージョンを 1 つ選択(例:ap-northeast-1) |
後から他リージョン追加可 |
| Landing Zone の有効化 | Enable → マスターハブ・ログアカウント・監査アカウントが自動作成 |
作成完了まで 5‑10 分程度 |
| ガードレール選択 | 必須と推奨のチェックボックスをオンにする | 初期は必須のみ有効化し、後から追加推奨 |
| 設定保存 | Create landing zone → 完了画面でダッシュボードへ遷移 |
ダッシュボードでステータス確認 |
ポイント:ウィザードの各画面を飛ばさずに順番通り進めることが、失敗防止につながります。
Landing Zone とガードレールの構築
自動作成される 3 種類のアカウント
| アカウント | 主な役割 |
|---|---|
| マスターハブ | 組織全体の管理権限、SCP(Service Control Policy)の中心 |
| ログアカウント | CloudTrail、AWS Config のデータ集約先 |
| 監査アカウント | Security Hub、GuardDuty、IAM Access Analyzer などのセキュリティサービスが有効化済み |
これらはすべて CloudFormation スタックとしてデプロイされます。スタック数は組織全体で 最大 200 個(リージョンごと) が上限です(Service Quotas – CloudFormation)。
必須・推奨ガードレール
| カテゴリ | ガードレール名 | 適用タイミング |
|---|---|---|
| 必須 | S3 バケットは暗号化が必須 | アカウント作成直後 |
| EC2 にパブリック IP を付与しない | 同上 | |
| 推奨 | IAM ポリシーは最小特権で設計 | 新規アカウント登録時、または四半期レビュー時 |
| AWS Config が全リージョンで有効 | 初期セットアップ完了後に一括適用 |
根拠:Control Tower のガードレール一覧は公式ドキュメント(https://docs.aws.amazon.com/controltower/latest/userguide/guardrails.html)に記載されています。
Account Factory によるアカウント管理
新規アカウントのプロビジョニング手順
- Account Factory の有効化
Control Tower→Account factoryタブ →Enable。 - テンプレート選択(デフォルトまたはカスタム CloudFormation)
- 必須パラメータ入力例
| パラメータ | 例 |
|---|---|
| Account name | dev-payment-service |
| Email address | dev-payments-{{random}}@example.com(自動生成) |
| OU (組織単位) | Sandbox/Payments |
| Tags | Environment=Dev, Owner=TeamA |
| IAM Role for provisioning | AWSControlTowerExecution(デフォルト) |
- プロビジョニング実行 → CloudFormation がスタックを作成し、数分で新規アカウントが利用可能に。
- ガードレール自動適用:Account Factory で作成された瞬間に選択済みの必須・推奨ガードレールが付与されます。
既存アカウントのオンボーディング手順
| 手順 | 内容 |
|---|---|
| 1. 招待 | マスターハブから Invite account → 対象 AWS アカウント ID を入力 |
| 2. 受諾 | 招待側でコンソールにログインし、Accept invitation をクリック |
| 3. 登録 | マスターハブの Account factory → Register existing account から対象アカウントを選択 |
| 4. ガードレール適用 | 登録完了と同時に必須ガードレールが有効化。推奨は手動で追加 |
| 5. ログ転送設定 | CloudTrail が自動的にログアカウントへ転送されない場合、aws cloudtrail update-trail で --s3-bucket-name ct-logging-bucket を指定 |
注意点:既存アカウント側でも MFA が有効化されていることが前提です(未設定の場合はセットアップが失敗します)。
IAM Identity Center(SSO)設定
| 手順 | 操作概要 |
|---|---|
| 1. 有効化 | Control Tower ダッシュボード → Settings → Identity center → Enable |
| 2. 外部 IdP 連携(任意) | SAML 2.0 プロバイダー(Okta、Azure AD 等)を登録。2024‑2025 年版では SCIM 自動プロビジョニングは オプション機能 として提供されています。 |
| 3. ユーザー・グループ作成 | Users → Create user、Groups → Create group(例:Admins-Prod, Developers-Sandbox) |
| 4. アクセス割り当て | Assignments タブで OU ごとにグループをマッピングし、AWS Account Access ポリシーで最小権限ロールを付与 |
公式参照:IAM Identity Center のベストプラクティス(https://docs.aws.amazon.com/singlesignon/latest/userguide/best-practices.html)
運用検証とコスト・クォータのポイント
1. 必要な検証項目チェックリスト
- Landing Zone ステータス:Dashboard の
Landing zone statusがActive - ガードレール適合率:
AWS Control Tower > Guardrails→ 各アカウントでCompliant = 100% - ログ配信先確認:CloudTrail と Config の S3 バケットが
arn:aws:s3:::ct-logging-bucketに設定されているか - SSO 動作テスト:IAM Identity Center 経由で対象 OU のコンソールにシングルサインオンできるか
2. よくあるエラーと対処法
| エラー | 主な原因 | 推奨対策 |
|---|---|---|
| ルート MFA 未設定 | Setup 前に MFA が無い | 事前に必ず MFA を有効化し、テストコードで確認 |
| OU 階層上限超過 | OU が 10 階層を超える | 現行上限は 10 階層(Organizations の制限)。不要な階層は統合 |
| Service Quota 超過 | CloudFormation スタック数、IAM ロール数などが上限に到達 | AWS Service Quotas コンソールで対象リソースの上限を確認し、必要なら増加申請(例:IAM ロール 1,000 → 5,000) |
| 招待メール未届 | スパムフィルタやドメインブロック | 受信側に aws.amazon.com をホワイトリスト登録し再送 |
3. コスト見積もり(参考値)
| サービス | 従量課金例 | 月間概算コスト(例) |
|---|---|---|
| CloudTrail | $2 / 10,000 イベント | 5 万イベント → 約 $10 |
| AWS Config | $0.003 / ルール評価 | 100 ルール × 1M 評価 → 約 $300 |
| GuardDuty | $1 / 1M DNS/Flow ログ | 2M ログ → 約 $2 |
| S3(ログ保存) | $0.023 / GB (Standard) | 500 GB → 約 $11.5 |
| Security Hub | 無料(標準)+有料スタンダード ($0.001/評価) | 小規模利用で月 <$5 |
注記:Control Tower 自体に追加料金は発生しません。上記は基盤サービスの従量課金です。
4. 定期的な運用ベストプラクティス
- ガードレールと SCP の四半期レビュー
-
AWS Config Rulesの評価結果を元に、必要ならカスタム SCP を追加(例:特定 OU でec2:TerminateInstancesを禁止)。 -
コスト・予算の自動化
-
AWS Budgets→ OU 別に月次予算上限設定。超過時は SNS 通知と自動タグ付与(例:CostOverrun=true)を実装。 -
監査レポートの自動生成
-
Security Hub の標準(PCI DSS, SOC 2 等)を有効化し、毎月 PDF を S3 にエクスポート → CloudWatch Events と Lambda で担当者へメール送信。
-
ログ保持期間の明確化
- CloudTrail は最低 90 日、推奨は 1 年以上(コンプライアンス要件に合わせて S3 ライフサイクルポリシーで自動移行)。
まとめ
- 事前準備:ルート MFA の有効化、Organizations の “All features” 有効化、最小権限ロールの作成は必須です。
- セットアップ:Control Tower ウィザードを順番通りに実行すれば、Landing Zone(マスターハブ・ログ・監査)と必須ガードレールが自動構築されます。
- アカウント管理:Account Factory で新規アカウントは標準化し、既存アカウントは Organizations 招待+登録手順で統合します。
- SSO:IAM Identity Center を有効にすれば、全アカウントへのシングルサインオンが実現できます(外部 IdP 連携は任意)。
- 運用:定期的なガードレール・SCP のレビュー、コスト予算管理、監査レポート自動化で長期的に安全かつコスト最適化されたマルチアカウント環境を維持できます。
本ガイドは 2024‑2025 年時点の AWS 公開情報に基づいています。機能追加や UI の変更があった場合は、必ず AWS 公式ドキュメント と リリースノート を確認してください。