複数のAWSアカウントの統制、管理が難しい、複雑と嘆くSREやクラウドエンジニアをたくさん見てきました。
2023年の現在、推奨する管理方法をお伝えしようと思います。
課題はなにか
細かい課題は各社異なりますが、全体を見ると共通の課題もあります。
そんな共通の課題をここで整理しておきたいと思います。
1. 複数のAWSアカウントのログインに手間がかかる
2. 誰がどのAWSアカウントにどのような権限を持っているかを把握し、変更することが困難
AWS Organization と IAM Identity Centerを使う
まず初めに提案するアーキテクチャは Organization と IAM Identity Center の組み合わせです。
このアーキテクチャを使うことで上記の課題を解決することができます。
AWS Organizations とは複数のAWS アカウントを統合して一元管理するサービスです。まさに複数のAWSアカウントを使っている環境にマッチするサービスです。もし、いま1つのAWSアカウントだけ使っている状況でもAWS Organizationsを使うことをおすすめします。なぜなら、将来ずっと1つのAWSアカウントのみ、ということは考えづらいからです。
企業のID基盤との統合
さらなる、おすすめとしては企業のID基盤とAWS Identity Centerを統合することです。
企業のID基盤として多いのはAzureADやOktaなどでしょう。企業のID基盤とAWS Identity Centerを統合することでセキュリティを担保しつつ、開発者体験をより良いものにすることができます。
AzureADやOktaで一度認証しておけば、セッションが切れるまではAWSの認証をスムーズになります。
課題がどう解決されるか
課題(再掲)
1. 複数のAWSアカウント全体に同じ設定を行うのは手間がかかります。
2. 誰がどのAWSアカウントにどのような権限を持っているかを把握し、変更することは困難です。
解決
1. AWS IAM Identity centerのユーザでログインすれば、ログイン可能な一覧から選択するだけ
2. AWS Organization で把握、管理できます
課題が解決され、更にここには記載していないようなメリットもありますが。例えば複数のAWSアカウントの請求情報をまとめてみることができます。