Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥

AWS Control Towerを2年弱運用して得たエッセンスと展望/securityjaws31

AWS Control Towerを2年弱運用して得たエッセンスと展望/securityjaws31

Security-JAWS第31回での登壇資料です。
イベントURL:https://s-jaws.doorkeeper.jp/events/165371

More Decks by みずほリサーチ&テクノロジーズ株式会社 先端技術研究部

Other Decks in Technology

Transcript

  1. AWS Control Towerを2年弱運用して得たエッセンスと展望 2023.11.15 小坂 洋祐 Copyright (c) Mizuho Research

    & Technologies. Ltd All Rights Reserved. みずほリサーチ&テクノロジーズ
  2. アジェンダ 3 • 社内プラットフォーム概要 • Control Towerの概要・活用 • Control Tower概要

    • Control Towerでできること • Control Towerの運用 • ランディングゾーンのバージョンアップ対応 • アップデートによる機能改善 • まとめ
  3. 社内プラットフォーム概要 5 プロダクトビジョン みずほの新規事業創出およびシステム受託開発において、安心してAWSの有用性を発揮し、 プロジェクトオーナーやシステム開発者に対して、ビジネス価値の創造に迅速に着手し、集中し て開発できるプラットフォームを提供する。 社内には2つのプラットフォームが存在 種類 詳細 みずほ銀行向け

    みずほ銀行向けにセキュリティ等を含めたガバナンスの必 要性に鑑み、統制を利かせたAWS基盤。 お客様(外部)向け 今回紹介するプラットフォーム。上の基盤にはお客様向け の案件を載せることが困難なことから、別のプロダクトと して独自に構築を実施。
  4. 社内プラットフォーム概要 6 • 社員が安心してAWS環境を利用できるよう、 必要なアカウント管理やセキュリティ機能を実装したアカウントを迅速に提供 • アカウント管理の中心として、AWS Organizationsと比べてマルチアカウント管理に 優れているAWS Control

    Towerを活用(2021/11~) Control Tower テナントAWSアカウント1 提供サービス AWSアカウント管理 クラウドセキュリティ 開発システム テナントAWSアカウント2 テナントAWSアカウント3 マスターアカウント Auditアカウント Log Archiveアカウント ・ ・ ・
  5. Control Towerでできること 10 ログ集約 • CloudTrail、Configのログを自動集約 テナントAWSアカウント1 AWS Config AWS

    CloudTrail Log Archiveアカウント Amazon S3 Log Archiveアカウント内のS3に自動集約
  6. Control Towerでできること 11 通知 • 配下アカウントで起きたConfig Ruleの変更情報・準拠状況をSNS通知 テナントAWSアカウント1 AWS Config

    Auditアカウント AuditアカウントへのConfig集約・通知 AWS Config Amazon Simple Notification Service (Amazon SNS)
  7. Control Towerでできること 12 シングルサインオンの実現 • IAM Identity Centerを利用して、EntraID(旧Azure AD) 等のIDソースの情報でログイン可能

    テナントAWSアカウント1 マスターアカウント SSOログイン AWS IAM AWS IAM Identity Center EntraID(旧Azure AD) 等のID Provider ※なくても可能 ①ログイン ②SSOログイン ③Assume Role Role
  8. Control Towerでできること 13 シングルサインオンの実現 • 複数アカウント切り替えもスムーズ アカウント名 ID メールアドレス アカウント名

    ID メールアドレス アカウント名 ID メールアドレス アカウント名 ID メールアドレス アカウント名 ID メールアドレス ロール名1 ロール名2 選んだ権限でログイン可能
  9. コントロール(ガードレール) 15 Control Tower のコントロール(旧:ガードレール)とは? コントロールとは、AWS 環境全体の継続的なガバナンスを提供する高レベルのルールのこと。 • 予防(制限) •

    検知 • プロアクティブコントロール の3種類が存在。配下のアカウントに一括で反映できる。 本プラットフォームでは、現在は必須の23個に加え、強く推奨の1つを導入。 予防 検知 プロアクティブ 必須 20 3 0 強く推奨 1 0 0 選択的 0 0 0
  10. コントロール(ガードレール) 16 使用しているコントロールの例 必須のコントロール(抜粋) • AWS Control Tower によって設定された Amazon

    CloudWatch Logs ロググループの変更を許可しない • AWS Control Tower によって設定された Amazon CloudWatch の変更を許可しない • ログアーカイブの削除を許可しない • AWS Control Tower によって設定された Amazon SNS のサブスクリプションへの変更を不許可にします • CloudTrail への設定変更を不許可にします • 利用可能なすべてのリージョンで CloudTrail を有効にする • AWS Control Tower によって作成された AWS Config アグリゲーション認可の削除を許可しない • AWS Config への設定変更を不許可にします • 利用可能なすべてのリージョンで AWS Config を有効にする 強く推奨のコントロール(利用しているもの) • ルートユーザーのアクセスキーの作成を許可しない
  11. ランディングゾーンのバージョンアップ時の対応 19 過去のランディングゾーンバージョンアップ履歴 Ver. リリース日 主要な更新内容 2.7 2021/03/31 • リージョン追加(東京)

    【ここからスタート】 2.8 2022/02/12 • Security Hub/Configの対応、リージョン拒否追加 2.9 2022/04/20 • Python3.9対応 3.0 2022/07/27 • アカウントベースの AWS CloudTrail 証跡から組織ベース の証跡への変更。 • リージョン拒否追加 3.1 2023/02/10 • ログ記録アカウントの Access Logging バケットにおける サーバーアクセスログ記録を非アクティブ化 • リージョン拒否追加 3.2 2023/06/17 • Security Hub:AWS Control Tower の一部であるコント ロールについて、コンソールにドリフトが表示されるよう に更新 • リージョン拒否追加
  12. アップデートによる機能改善 30 ランディングゾーンの更新以外にも、プラットフォーム運用者として嬉しいアップデートが多数 リリース日 更新内容 2021/07/28 • ログのS3バケットのキーを指定可能に 2022/08/15 •

    カスタマイズされたログの保持 ログのS3 バケットの保持ポリシーをカスタマイズする機能 を提供。当初は1年のみ。 2022/12/16 • 同時アカウント操作 Account Factory 5つまで同時実行可能に 2023/04/19 • 大阪リージョン対応
  13. アップデートによる機能改善:Account Factory 5つまで同時実行可能 35 Account Factoryの旧仕様 新アカウント発行処理は並列実行不可であった。 • 1件目の実行中に2件目を実行すると2件目は強制的にエラーとなっていた。 •

    30-40分程度待ってから改めて入力する必要があった。 本改善により、5つまで同時実行可能に! 今後、同時に複数のアカウントを発行する依頼が来る予定もあり、非常に嬉しい改善点であった。
  14. メリット・デメリットまとめ 38 メリット • Control Towerの活用により、マルチアカウント環境において、アカウント発行、 ID連携/SSOログイン、ランディングゾーンによる統制、コントロールやSCPによる制限等を ほぼマネージドで実現することが可能。 • Control

    Towerとしての料金はなし。ランディングゾーンとしてデプロイされたサービスの料金 のみ発生。(CloudTrailやConfig、S3保管料金など。) デメリット • ランディングゾーンは定期更新が必要。稀に大きな変更も含まれるため、内容はよく確認して適 用すること。特に、本番運用しているアカウントへの影響をよく考慮すること。 • ランディングゾーンのカスタマイズ性は高くないので、活用に当たって要件に合うか検証が必要。 • IP制限や独自サービス提供など、ランディングゾーンに含まれないものは独自に行う必要がある。