Slide 1

Slide 1 text

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


Slide 2

Slide 2 text

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

Slide 3

Slide 3 text

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

Slide 4

Slide 4 text

AWSアカウント構成の 2つの戦略 ● シングルアカウント戦略 ● マルチアカウント戦略

Slide 5

Slide 5 text

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

Slide 6

Slide 6 text

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

Slide 7

Slide 7 text

マルチアカウント戦略のメリット ● ガバナンス ○ 明確な権限の分離 ● 課金 ○ コスト分類 ● セキュリティ ○ 問題発生時の影響範囲を絞る

Slide 8

Slide 8 text

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

Slide 9

Slide 9 text

マルチアカウント戦略のデメリット ● マルチアカウント戦略のデメリット ○ アカウントごとのアクセス・権限管理 ○ アカウントごとのコスト管理、取りまとめ ○ 構築、運用のオーバーヘッド これらマルチアカウント戦略の 負担を軽減する手段が AWS Organizations

Slide 10

Slide 10 text

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

Slide 11

Slide 11 text

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

Slide 12

Slide 12 text

● 管理アカウント/メンバーアカウント ● 組織単位(Organizational Unit) ● サービスコントロールポリシー(SCP) ● Organizations 連携サービス AWS Organizations の主要機能

Slide 13

Slide 13 text

AWS Organizations の主要機能 ● 管理アカウント/メンバーアカウント ⇠ ● 組織単位(Organizational Unit) ● サービスコントロールポリシー(SCP) ● Organizations 連携サービス

Slide 14

Slide 14 text

管理アカウント/メンバーアカウント AWS Organizations で取り扱うアカウントの種類は 2つ ● 管理アカウント(1つだけ) ● メンバーアカウント(複数)

Slide 15

Slide 15 text

管理アカウント ● 組織全体の設定、管理を行うための代表アカウント ● 全アカウントのAWS利用料が管理アカウントへ請求され る (一括請求 機能) ✍ 一括請求のメリット ● コスト管理: 請求簡素化。アカウントごとの利用状況を集計 /管理 ● コスト最適化: 「組織を 1アカウントとして扱い」利用料が計算されるためボ リュームディスカウントの恩恵有

Slide 16

Slide 16 text

メンバーアカウント ● 実際のワークロードなどを稼働させるアカウント群 ● (Tips) 特定の組織管理業務を行うアカウントを作ることが 多いです

Slide 17

Slide 17 text

Tips:「特定の管理業務」の代表例 ● 監査(Audit)アカウント ○ 組織全体のセキュリティ管理を行う役割を持つ ○ AWSのセキュリティ系サービス(AWS Security Hub, Amazon GuardDuty等) を活用する ● ログアーカイブ(Log Archive)アカウント ○ 組織全体のログを集約する役割を持つ ○ 各種ログ(CloudTrail, VPC Flow Logs 等)を集約、管理する

Slide 18

Slide 18 text

AWS Organizations の主要機能 ● 管理アカウント/メンバーアカウント ● 組織単位(Organizational Unit) ⇠ ● サービスコントロールポリシー(SCP) ● Organizations 連携サービス

Slide 19

Slide 19 text

組織単位(Organizational Unit: OU) 階層構造を作るための AWSアカウントのコンテナ

Slide 20

Slide 20 text

組織単位(Organizational Unit: OU) ● よくあるOU種別、分け方 ○ ワークロード種別単位で OUを作成 ○ 本番/非本番 単位でOUを作成 ○ セキュリティ管理用 OUを作成 ✍ OU構成は最初の大事な設計。ベストプラクティスを参考にしよう → AWS Organizations における組織単位のベストプラクティス | Amazon Web Services

Slide 21

Slide 21 text

AWS Organizations の主要機能 ● 管理アカウント/メンバーアカウント ● 組織単位(Organizational Unit) ● サービスコントロールポリシー(SCP) ⇠ ● Organizations 連携サービス

Slide 22

Slide 22 text

サービスコントロールポリシー(SCP) ● ルート/OU/アカウントにアタッチするIAMポリシー ● OU配下のアカウントを一括制御できる ● 予防的ガードレールの役割 ▲ デフォルトで全てのルート/OU/アカウント に “FullAWSAccess” がアタッチされている

Slide 23

Slide 23 text

Tips: SCPの継承 ● OUにアタッチした SCPは その配下の要素(OU/アカウント) にも適用される (SCPの継承) ● SCP設計の際の重要な考慮点 参考: [Organizations] SCP(サービスコントロールポリシー ) の継承の仕組みを学ぼう | DevelopersIO

Slide 24

Slide 24 text

AWS Organizations の主要機能 ● 管理アカウント/メンバーアカウント ● 組織単位(Organizational Unit) ● サービスコントロールポリシー(SCP) ● Organizations 連携サービス ⇠

Slide 25

Slide 25 text

AWS Organizations 連携が “前提” のサービス いくつかのサービスは AWS Organizations 利用が前提 ● AWS Control Tower → 後述 ● AWS Single Sign-On (SSO) → 後述 ● AWS Firewall Manager ○ WAFルールや Security Group をアカウント横断で管理

Slide 26

Slide 26 text

AWS Control Tower ● ベストプラクティスに基づいた Organizations環境のセット アップ/管理を可能にするサービス ● ベストプラクティス構成を簡単に構築 ○ ※カスタマイズ性は高くない 画像: AWS マルチアカウント管理を実現する ベストプラクティスとは ?: https://aws.amazon.com/jp/builders-flash/202 007/multi-accounts-best-practice/ ✍ 参考になるので利用の有無に関わらず調 べてみましょう ● ベストプラクティス構成 ● セキュリティガードレール など

Slide 27

Slide 27 text

AWS Single Sign-On(SSO) ● 組織内アカウントへのログインの仕組みを作る機能 ● ユーザーのアカウントへのアクセスを一元管理

Slide 28

Slide 28 text

AWS Organizations 連携のサービス ● 20以上あり、アップデートで日々増え続けている ○ AWS services that you can use with AWS Organizations - AWS Organizations ● よく使うサービスピックアップ ○ CloudFormation StackSets → 後述 ○ GuardDuty → 後述 ○ CloudTrail ... 組織全体の証跡を集約 ○ Resource Access Manager ... AWSリソースの組織内共有

Slide 29

Slide 29 text

CloudFormation StackSets ● 複数リージョン/複数アカウントに CFnスタックを展開でき る機能 ● Organizations 連携で 「OU単位で簡単に展開」できるよう になる ○ + 自動デプロイ/削除機能も利用可能 ● 汎用的に使える

Slide 30

Slide 30 text

GuardDuty ● マネージドな脅威検出サービス ● Organizations 連携で 組織全体の GuardDuty 一括設定 と検出イベントの集中管理が可能に ● 特定メンバーアカウントを委任管理者とできる ○ 委任先アカウントで集中管理

Slide 31

Slide 31 text

● 管理アカウント/メンバーアカウント ○ 管理アカウントが組織全体を統制する ● 組織単位(Organizational Unit) ○ メンバーアカウントを階層化して管理する ● サービスコントロールポリシー(SCP) ○ AWS環境の予防的ガードレール ● Organizations 連携サービス ○ たくさんある AWS Organizations 主要機能まとめ

Slide 32

Slide 32 text

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

Slide 33

Slide 33 text

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

Slide 34

Slide 34 text

まずは アカウント分割/OU設計 ● アカウント分割の方針をまず定めて、それに合わせた OU構成を考えていく ● OU設計のベストプラクティスを参考にしよう ○ AWS Organizations における組織単位のベストプラクティス | Amazon Web Services

Slide 35

Slide 35 text

SCPで予防的ガードレールを敷こう ● 『OU単位で制御したい内容』を書く ○ 「(ヒトに関係なく)絶対にやっちゃだめ!」なアクションを洗い 出すと良い ● SCP設計の際に知っておいたほうが良いキーワード ○ 継承/許可リスト/拒否リスト/暗黙のDeny [Organizations] SCP(サービスコントロールポリシー )の継承 の仕組みを学ぼう | Developers.IO

Slide 36

Slide 36 text

AWS SSO でアクセスを管理しよう ● AWS SSOが使えることは大きなメリット ○ ※ AWS SSOが出るまでは、「Jumpアカウントからのスイッチ ロール」戦略が主に採用 (もしくは 3rd party SSO) 画像: AWS におけるマルチアカウント管理の手法とベストプラクティス | AWS Jumpアカウントからのス イッチロール構成 →

Slide 37

Slide 37 text

AWS SSO でアクセス管理しよう ● Jumpアカウント戦略はリソース管理が大変 ○ Jumpアカウントで IAMユーザー管理 ○ 各アカウントへ IAMロール管理 ● AWS SSO は管理アカウント内で完結する ○ ユーザー管理 ■ ※ AWS SSO提供 IDストア or 既存AD or 既存外部プロバイダー ○ ユーザーがどのアカウントにどの権限でアクセスできるか割 り当て 参考: AWS SSOを図解してみた | DevelopersIO

Slide 38

Slide 38 text

Organizations 連携を活用していこう ● 全てを活用していく必要はない ● 最低限セットアップしておきたいサービス ○ CloudTrail ○ Security Hub/GuardDuty ○ Config (with SSM Quick Setup)

Slide 39

Slide 39 text

【やっておこう!】CloudTrail の証跡を集約 【Organizations】組織レベルで CloudTrailの証跡を有効化、S3バケットへ集約する | DevelopersIO

Slide 40

Slide 40 text

【やっておこう!】セキュリティ集中管理 ▼GuardDuty参考 【Organizations】組織内すべてのアカウント・すべてのリージョンへの GuardDuty設定を簡単に 行う | DevelopersIO ▼Security Hub参考 【アップデート】Security Hubが AWS Organizations と統合!組織内セキュリティチェック環境を 簡単にセットアップ/管理できるようになりました | DevelopersIO

Slide 41

Slide 41 text

【やっておこう!】Configセットアップ SSM Quick Setup で超カンタンにセットアップ SSM Quick Setup で Configの記録 / 適合パックが AWSアカウント単位 / Organizations全体で 超カンタンデプロイ可能に!(全リージョン対応) | DevelopersIO

Slide 42

Slide 42 text

まとめ AWS Organizations の主要機能 ● 管理アカウント/メンバーアカウント ● 組織単位(Organizational Unit) ● サービスコントロールポリシー(SCP) ● Organizations 連携サービス AWS Organizations を使いこなそう 1. まずは アカウント分割/OU設計 2. SCPで予防的ガードレールを敷こう 3. AWS SSOでアクセスを管理しよう 4. Organizations 連携を活用していこう