【要約】【AWS Organizations】個人アカウントで一人アドミンに挑戦してみた!(SCP・タグポリシー編) [Qiita_Trend] | Summary by TechDistill
> Source: Qiita_Trend
Execute Primary Source
// Problem
マルチアカウント環境において、リソースへのタグ付けが徹底されないことで、管理上の不備が生じる課題がある。開発者がリソースを作成する際、以下の問題に直面する。
- ・タグの付け忘れによる、コスト配分分析の失敗。
- ・タグの値(env=sandbox等)の表記揺れによる、自動化ツールの動作不良。
- ・タグポリシー単体では、タグが付与されていないリソースをブロックできないという仕様上の限界。
// Approach
筆者は、SCPとタグポリシーを組み合わせることで、タグの「存在」と「内容」の両面を制御する手法を検証した。具体的には以下のステップを踏んでいる。
- ・SCPによる存在強制: lambda:CreateFunction実行時にenvタグが欠落している場合、Denyするポリシーを作成。
- ・タグポリシーによる標準化: envタグの値をsandboxに限定し、enforced_forを用いてLambdaへの適用を強制。
- ・検証環境の構築: 管理アカウントからメンバーアカウントへスイッチロールし、3パターンの作成試行を実施。
// Result
SCPとタグポリシーの併用により、意図した通りの厳格な統制が実現できることを実証した。検証の結果、以下の挙動が確認された。
- ・env=sandboxのタグ付き作成: 成功。
- ・タグなしでの作成: SCPによりブロック。
- ・env=production(非準拠値)での作成: タグポリシーによりブロック。
Senior Engineer Insight
> マルチアカウント運用において、この「SCPによる存在強制」と「タグポリシーによる値の標準化」の組み合わせは鉄則である。タグはコスト管理やセキュリティ境界の定義に直結するため、手動運用は不可能だ。ただし、SCPのDeny設定は強力すぎるため、影響範囲を特定のActionに絞る設計が求められる。また、タグポリシーのエラーメッセージが簡素である点は、運用時のトラブルシューティングにおける課題として認識しておくべきだ。