コンテンツにスキップ

サービス別トピック/AWS Organizations

本サイトは Classmethod Cloud Guidebook (CCG) のデモサイトです

デモサイトのため、実際の内容と相違がある点にご留意ください。
クラスメソッドメンバーズをご契約中のお客様は下記リンクからアクセスください。
Classmethod Cloud Guidebook

はじめに

AWS Organizations は複数のAWSアカウントを統制するためのサービスです。 以下のような機能を活用できます。

  • 組織単位(OU) を使ったAWSアカウント階層化
  • サービスコントロールポリシー(SCP) を使ったアクセス制御
  • AWS Organizations 連携サービス など

img

AWS Organizations についての詳しい解説は以下ブログを参照ください。

設計トピック

AWS Organizations の利用開始

クラスメソッドメンバーズでは 組織管理プラン にご加入いただくことで、 AWS Organizations を利用開始できます。

ご利用を希望のお客様は、メンバーズポータルよりお問い合わせいただくか担当営業にお問い合わせください。

組織単位(OU)設計

組織単位(Organizational Units:OU)構成を決定します。 OUは AWS Organizaions の機能で、複数のAWSアカウントを階層化するためのコンテナです。 OU単位でアクセス制御やリソース展開などの統制が可能です。

ベーシックな OU構成のサンプルを以下に示します。

OU構成サンプル

img

Security OU にアカウント横断で統制を効かせるためのAWSアカウントを配置します。 例えば以下のようなAWSアカウントです。

  • セキュリティアカウント: アカウント横断でセキュリティ運用するためのAWSアカウント
  • ログアーカイブアカウント: アカウント横断でログを集中管理するためのAWSアカウント

Workloads OU に ステージ単位 × システム単位で AWSアカウントを配置しています。

(注記) MembersDefaultOU はクラスメソッドの設定済みOUです。 このOU配下にお客様のOUを作成いただきます。

また、以下AWSブログにOU設計のベストプラクティスが記載されています。

OU自体は課金無く利用でき、後から拡張可能です。 上記のようなブログは参考にしつつ、拡張性やスモールスタートを意識して 必要最小限のOU構成から始めるのが良いでしょう。

Organizations 連携サービスの活用

AWS Organizations は様々なAWSサービスと連携しています。

より簡単にAWSアカウント横断でAWSサービスを活用・管理できるようになります。 代表的なAWSサービスを以下に記載します。

AWSサービス Organizations連携でできるようになること 参考ブログ
AWS CloudFormation 組織全体もしくはOU単位でリソースを展開できます 【Organizations】組織単位で CloudFormation StackSetsを簡単にデプロイしてみる | DevelopersIO
AWS CloudTrail 組織全体で CloudTrail証跡を作成、集中管理できます 【Organizations】組織レベルで CloudTrailの証跡を有効化、S3バケットへ集約する | DevelopersIO
AWS Security Hub 組織全体で Security Hub を有効化、集中管理できます [アップデート]Security Hubが AWS Organizations と統合!組織内セキュリティチェック環境を簡単にセットアップ/管理できるようになりました | DevelopersIO
AWS IAM Identity Center(旧: AWS SSO) マルチアカウント環境のユーザー・アクセス管理を実現します AWS再入門ブログリレー2022 AWS Single Sign-on編 | DevelopersIO

メンバーアカウントへのAWSサービス委任

委任先のメンバーアカウントで特定AWSサービスの組織全体の管理が可能になります。

Organizations の管理アカウントは他のメンバーアカウントを統率する、非常に権限の強いアカウントです。 最小権限の法則に従ってAWSサービスを利用する権限をメンバーアカウントへ委任します。

どのサービスを、どう委任させるかについては以下ブログが参考になります。

サービスコントロールポリシー(SCP)の利用

サービスコントロールポリシー (以降 SCP) は、アクセス制御の管理に使用できるポリシーの一種で、 OUまたはAWSアカウントに対してのアクセス制御を一元的に制御できます。

OUまたはアカウントに対して一元的に制御したいアクションを洗い出し、SCPを適用させます。 以下にSCPの用途として、よく使われるものをピックアップします。

用途 説明 実装例
ベースラインの保護 管理者が作成・整備したリソースを保護します ユーザーによる AWS Config の無効化またはルールの変更を禁止する | AWS Organizations
リージョン制限 使わないリージョン上でのAPI実行を拒否します [小ネタ]AWS OrganizationsのSCPで特定リージョンのみ使用できるようにする | DevelopersIO
セキュリティ向上 セキュリティベストプラクティスを強制します 【小ネタ】暗号化していない RDS DBの作成を拒否するポリシー | DevelopersIO

また、SCPを利用する上で抑えておきたい概念が SCPの継承 です。 SCPの継承は「ルート/OUに割り当てたSCPは、そのルート/OU配下すべての要素に引き継がれる」ことを言います。

詳細や継承の仕組みを活用したSCP戦略については以下ブログを参照ください。