$30 off During Our Annual Pro Sale. View Details »

AWS Organizations で始めるマルチアカウント管理

AWS Organizations で始めるマルチアカウント管理

スケールするAWS環境を管理する手法としてマルチアカウント戦略は主流になりつつあります。
そのマルチアカウント戦略に役立つ AWS Organizations の概要や使い方のポイントを説明します。

MasahiroKawahara

October 11, 2021
Tweet

More Decks by MasahiroKawahara

Other Decks in Technology

Transcript

  1. AWS Organizations で始める
 マルチアカウント管理
 川原 征大
 https://dev.classmethod.jp/author/kawahara-masahiro/


  2. 目次 1. なぜ AWS Organizations が必要か 2. AWS Organizations の主要機能

    3. AWS Organizations を使いこなそう
  3. 1. なぜ AWS Organizations が必要か 2. AWS Organizations の主要機能 3.

    AWS Organizations を使いこなそう
  4. AWSアカウント構成の 2つの戦略 • シングルアカウント戦略 • マルチアカウント戦略

  5. シングルアカウント戦略 全ての ネットワークインフラ、コンピューティングリソースを 1 アカウント内で取り扱う シンプルで手早い導入が可能

  6. マルチアカウント戦略 ワークロードやステージごとにアカウントを分割する シングルアカウント戦略と比較してガバナンスや課金、セ キュリティ面でメリットが多い

  7. マルチアカウント戦略のメリット • ガバナンス ◦ 明確な権限の分離 • 課金 ◦ コスト分類 •

    セキュリティ ◦ 問題発生時の影響範囲を絞る
  8. マルチアカウント戦略のデメリット • マルチアカウント戦略のデメリット ◦ アカウントごとのアクセス・権限管理 ◦ アカウントごとのコスト管理、取りまとめ ◦ 構築、運用のオーバーヘッド

  9. マルチアカウント戦略のデメリット • マルチアカウント戦略のデメリット ◦ アカウントごとのアクセス・権限管理 ◦ アカウントごとのコスト管理、取りまとめ ◦ 構築、運用のオーバーヘッド これらマルチアカウント戦略の

    負担を軽減する手段が AWS Organizations
  10. 1. なぜ AWS Organizations が必要か 2. AWS Organizations の主要機能 3.

    AWS Organizations を使いこなそう
  11. AWS Organizations とは? 複数アカウントを組織化して 色々できるようにするサービス

  12. • 管理アカウント/メンバーアカウント • 組織単位(Organizational Unit) • サービスコントロールポリシー(SCP) • Organizations 連携サービス

    AWS Organizations の主要機能
  13. AWS Organizations の主要機能 • 管理アカウント/メンバーアカウント ⇠ • 組織単位(Organizational Unit) •

    サービスコントロールポリシー(SCP) • Organizations 連携サービス
  14. 管理アカウント/メンバーアカウント AWS Organizations で取り扱うアカウントの種類は 2つ • 管理アカウント(1つだけ) • メンバーアカウント(複数)

  15. 管理アカウント • 組織全体の設定、管理を行うための代表アカウント • 全アカウントのAWS利用料が管理アカウントへ請求され る (一括請求 機能) ✍ 一括請求のメリット

    • コスト管理: 請求簡素化。アカウントごとの利用状況を集計 /管理 • コスト最適化: 「組織を 1アカウントとして扱い」利用料が計算されるためボ リュームディスカウントの恩恵有
  16. メンバーアカウント • 実際のワークロードなどを稼働させるアカウント群 • (Tips) 特定の組織管理業務を行うアカウントを作ることが 多いです

  17. Tips:「特定の管理業務」の代表例 • 監査(Audit)アカウント ◦ 組織全体のセキュリティ管理を行う役割を持つ ◦ AWSのセキュリティ系サービス(AWS Security Hub, Amazon

    GuardDuty等) を活用する • ログアーカイブ(Log Archive)アカウント ◦ 組織全体のログを集約する役割を持つ ◦ 各種ログ(CloudTrail, VPC Flow Logs 等)を集約、管理する
  18. AWS Organizations の主要機能 • 管理アカウント/メンバーアカウント • 組織単位(Organizational Unit) ⇠ •

    サービスコントロールポリシー(SCP) • Organizations 連携サービス
  19. 組織単位(Organizational Unit: OU) 階層構造を作るための AWSアカウントのコンテナ

  20. 組織単位(Organizational Unit: OU) • よくあるOU種別、分け方 ◦ ワークロード種別単位で OUを作成 ◦ 本番/非本番

    単位でOUを作成 ◦ セキュリティ管理用 OUを作成 ✍ OU構成は最初の大事な設計。ベストプラクティスを参考にしよう → AWS Organizations における組織単位のベストプラクティス | Amazon Web Services
  21. AWS Organizations の主要機能 • 管理アカウント/メンバーアカウント • 組織単位(Organizational Unit) • サービスコントロールポリシー(SCP)

    ⇠ • Organizations 連携サービス
  22. サービスコントロールポリシー(SCP) • ルート/OU/アカウントにアタッチするIAMポリシー • OU配下のアカウントを一括制御できる • 予防的ガードレールの役割 ▲ デフォルトで全てのルート/OU/アカウント に

    “FullAWSAccess” がアタッチされている
  23. Tips: SCPの継承 • OUにアタッチした SCPは その配下の要素(OU/アカウント) にも適用される (SCPの継承) • SCP設計の際の重要な考慮点

    参考: [Organizations] SCP(サービスコントロールポリシー ) の継承の仕組みを学ぼう | DevelopersIO
  24. AWS Organizations の主要機能 • 管理アカウント/メンバーアカウント • 組織単位(Organizational Unit) • サービスコントロールポリシー(SCP)

    • Organizations 連携サービス ⇠
  25. AWS Organizations 連携が “前提” のサービス いくつかのサービスは AWS Organizations 利用が前提 •

    AWS Control Tower → 後述 • AWS Single Sign-On (SSO) → 後述 • AWS Firewall Manager ◦ WAFルールや Security Group をアカウント横断で管理
  26. AWS Control Tower • ベストプラクティスに基づいた Organizations環境のセット アップ/管理を可能にするサービス • ベストプラクティス構成を簡単に構築 ◦

    ※カスタマイズ性は高くない 画像: AWS マルチアカウント管理を実現する ベストプラクティスとは ?: https://aws.amazon.com/jp/builders-flash/202 007/multi-accounts-best-practice/ ✍ 参考になるので利用の有無に関わらず調 べてみましょう • ベストプラクティス構成 • セキュリティガードレール など
  27. AWS Single Sign-On(SSO) • 組織内アカウントへのログインの仕組みを作る機能 • ユーザーのアカウントへのアクセスを一元管理

  28. AWS Organizations 連携のサービス • 20以上あり、アップデートで日々増え続けている ◦ AWS services that you

    can use with AWS Organizations - AWS Organizations • よく使うサービスピックアップ ◦ CloudFormation StackSets → 後述 ◦ GuardDuty → 後述 ◦ CloudTrail ... 組織全体の証跡を集約 ◦ Resource Access Manager ... AWSリソースの組織内共有
  29. CloudFormation StackSets • 複数リージョン/複数アカウントに CFnスタックを展開でき る機能 • Organizations 連携で 「OU単位で簡単に展開」できるよう

    になる ◦ + 自動デプロイ/削除機能も利用可能 • 汎用的に使える
  30. GuardDuty • マネージドな脅威検出サービス • Organizations 連携で 組織全体の GuardDuty 一括設定 と検出イベントの集中管理が可能に

    • 特定メンバーアカウントを委任管理者とできる ◦ 委任先アカウントで集中管理
  31. • 管理アカウント/メンバーアカウント ◦ 管理アカウントが組織全体を統制する • 組織単位(Organizational Unit) ◦ メンバーアカウントを階層化して管理する •

    サービスコントロールポリシー(SCP) ◦ AWS環境の予防的ガードレール • Organizations 連携サービス ◦ たくさんある AWS Organizations 主要機能まとめ
  32. 1. なぜ AWS Organizations が必要か 2. AWS Organizations の主要機能 3.

    AWS Organizations を使いこなそう
  33. どう使いこなしていくか 1. まずは アカウント分割/OU設計 2. SCPで予防的ガードレールを敷こう 3. AWS SSOでアクセスを管理しよう 4.

    Organizations 連携を活用していこう
  34. まずは アカウント分割/OU設計 • アカウント分割の方針をまず定めて、それに合わせた OU構成を考えていく • OU設計のベストプラクティスを参考にしよう ◦ AWS Organizations

    における組織単位のベストプラクティス | Amazon Web Services
  35. SCPで予防的ガードレールを敷こう • 『OU単位で制御したい内容』を書く ◦ 「(ヒトに関係なく)絶対にやっちゃだめ!」なアクションを洗い 出すと良い • SCP設計の際に知っておいたほうが良いキーワード ◦ 継承/許可リスト/拒否リスト/暗黙のDeny

    [Organizations] SCP(サービスコントロールポリシー )の継承 の仕組みを学ぼう | Developers.IO
  36. AWS SSO でアクセスを管理しよう • AWS SSOが使えることは大きなメリット ◦ ※ AWS SSOが出るまでは、「Jumpアカウントからのスイッチ

    ロール」戦略が主に採用 (もしくは 3rd party SSO) 画像: AWS におけるマルチアカウント管理の手法とベストプラクティス | AWS Jumpアカウントからのス イッチロール構成 →
  37. AWS SSO でアクセス管理しよう • Jumpアカウント戦略はリソース管理が大変 ◦ Jumpアカウントで IAMユーザー管理 ◦ 各アカウントへ

    IAMロール管理 • AWS SSO は管理アカウント内で完結する ◦ ユーザー管理 ▪ ※ AWS SSO提供 IDストア or 既存AD or 既存外部プロバイダー ◦ ユーザーがどのアカウントにどの権限でアクセスできるか割 り当て 参考: AWS SSOを図解してみた | DevelopersIO
  38. Organizations 連携を活用していこう • 全てを活用していく必要はない • 最低限セットアップしておきたいサービス ◦ CloudTrail ◦ Security

    Hub/GuardDuty ◦ Config (with SSM Quick Setup)
  39. 【やっておこう!】CloudTrail の証跡を集約 【Organizations】組織レベルで CloudTrailの証跡を有効化、S3バケットへ集約する | DevelopersIO

  40. 【やっておこう!】セキュリティ集中管理 ▼GuardDuty参考 【Organizations】組織内すべてのアカウント・すべてのリージョンへの GuardDuty設定を簡単に 行う | DevelopersIO ▼Security Hub参考 【アップデート】Security

    Hubが AWS Organizations と統合!組織内セキュリティチェック環境を 簡単にセットアップ/管理できるようになりました | DevelopersIO
  41. 【やっておこう!】Configセットアップ SSM Quick Setup で超カンタンにセットアップ SSM Quick Setup で Configの記録

    / 適合パックが AWSアカウント単位 / Organizations全体で 超カンタンデプロイ可能に!(全リージョン対応) | DevelopersIO
  42. まとめ AWS Organizations の主要機能 • 管理アカウント/メンバーアカウント • 組織単位(Organizational Unit) •

    サービスコントロールポリシー(SCP) • Organizations 連携サービス AWS Organizations を使いこなそう 1. まずは アカウント分割/OU設計 2. SCPで予防的ガードレールを敷こう 3. AWS SSOでアクセスを管理しよう 4. Organizations 連携を活用していこう