[アップデート] CloudFormation StackSetsでOU内のアカウントを指定可能になりました!

今まで、サービスマネージドアクセス許可のデプロイ方式では「組織」か「OU内のアカウント全て」のみ指定可能でした。 今回のアップデートでより細かくOU内のアカウントを指定できるようになりました。
2022.07.11

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは!AWS事業本部コンサルティング部のたかくに(@takakuni_)です。

今回は、CloudFormation StackSetsでOU内のアカウントを指定可能になったためご紹介しようと思います。

先にまとめ

  • 共通集合(Intersection)、差分(Difference)、和集合(Union)の3つのオプションが追加
  • サービスマネージドアクセス許可のOUに対するデプロイで設定するオプション

今まで

はじめに「サービスマネージドアクセス許可」を使用したデプロイ方法では、ターゲットとして「組織」と「組織単位(OU)」が選択可能です。

画像:【Organizations】組織単位で CloudFormation StackSetsを簡単にデプロイしてみるより引用

アップデート

今回のアップデートで、「アカウントフィルタータイプ」オプションが追加され、ターゲット「組織単位(OU)」に対してより細かくアカウントを指定できるようになりました。

オプションは次から選択可能です。

  • 共通集合(Intersection)
  • 差分(Difference)
  • 和集合(Union)
  • なし(None)

今までと同じ動作でデプロイする場合は、「なし(None)」を選択します。

各オプションについて説明

ここからは、「共通集合(Intersection)」、「差分(Difference)」、「和集合(Union)」についてご紹介してみようと思います。

ざっくりいうと以下の通りです。

  • 共通集合:選択したOU内の指定したアカウントにデプロイ
  • 差分:選択したOUから指定したアカウントを引いたアカウントへデプロイ
  • 和集合:選択したOUと指定したアカウントにデプロイ

違いを説明するため、以下のOUとアカウントを想定して解説していこうと思います。

  • ou-aaaa-aaaaaaaa(111111111111, 222222222222, 333333333333)
  • ou-bbbb-bbbbbbbb(444444444444, 555555555555)

共通集合

共通集合では、選択したOU内の指定したアカウントにデプロイする方法です。

例えば、次のコンソール画面のように設定したとします。

この場合、ou-aaaa-aaaaaaaa内のアカウント111111111111222222222222を指定しているためデプロイされます。

しかし、アカウント333333333333ou-aaaa-aaaaaaaa内に属していますが、指定されていないためデプロイされません。

差分

差分では、選択したOUから指定したアカウントを引いたアカウント郡へデプロイする方法です。

例えば、次のコンソール画面のように設定したとします。

この場合、ou-aaaa-aaaaaaaa内のアカウント111111111111は指定しているためデプロイされません。

アカウント111111111111以外のou-aaaa-aaaaaaaa内のアカウントはスタックがデプロイされます。

和集合

最後に和集合ですが、選択したOUと指定したアカウントにデプロイする方法になります。

例えば、次のコンソール画面のように設定したとします。

この場合、ou-aaaa-aaaaaaaa内のアカウントと指定したアカウント444444444444にスタックがデプロイされます。

参考

まとめ

以上、CloudFormation StackSetsのアップデート紹介でした。「共通集合」と「和集合」の違いがイメージつかなくてまとめてみました。

この記事がどなたかの参考になれば幸いです。

以上、AWS事業本部コンサルティング部のたかくに(@takakuni_)でした!