ある開発チームは新規プロジェクトの IAM ポリシーを設計しています。同一ポリシーを複数の IAM エンティティ(ユーザー・ロール・グループ)に再利用したい一方、一部のロールには他と異なる追加権限を個別に付与したいという要件があります。管理のしやすさとセキュリティのバランスを最も適切に満たす設計はどれですか?
- A. すべての権限を 1 つのカスタマーマネージドポリシーにまとめ全エンティティにアタッチする。追加権限が必要なロールも同じポリシーに追記する
- B. すべての権限を 1 つのインラインポリシーとして各エンティティに個別に直接付与し、変更が必要になったら全エンティティを手動で更新する
- C. 全エンティティに AdministratorAccess マネージドポリシーをアタッチして権限不足を防ぐ
- D. 共通権限は AWS マネージドポリシーまたはカスタマーマネージドポリシーとして作成してアタッチし、個別権限のみインラインポリシーとして追加する
解答と解説を見る
正解: D
AWS ではポリシーを「再利用可能なマネージドポリシー(カスタマーまたは AWS 管理)」として共通権限を一元管理し、エンティティ固有の権限はインラインポリシーとして個別付与するのがベストプラクティスです。マネージドポリシーは 1 か所変更すればアタッチ先すべてに反映されるため管理負荷が低くなります。B はインラインポリシーを全エンティティに個別付与すると、変更のたびに全員を手動更新する必要があり管理負荷が非常に高くなります。C の AdministratorAccess は最小権限の原則に大きく違反しており、セキュリティリスクが高すぎます。A は追加権限が必要なロールのためにポリシーを書き換えると、他の全エンティティにも不要な権限が広がってしまい最小権限に反します。