【AWS】AWSのIAMポリシーで見せない&触らせないセキュリティ強化方法

こんにちは、ホワイトバードです。

先日、最小権限のIAMポリシーを付与する案件がありました。加えて、IAMポリシー自体を見せない&触らせないという要件もありましたので、今後共通的に適用できそうなIAMポリシーを作ってみたいと思います。

目的

「IAMポリシーは最小権限を付与する」というのは聞いたことがある方が多いと思います。必要以上の権限を持たないようにしてセキュリティレベルを最小限に抑えるやり方ですが、制限をかけたユーザーやロールに「見せない&触らせない」という要件を付与することでこのようなことができるようになります。

  • 制限されたユーザー権限の拡大の防止(過大な権限を新たに付与させない)
  • 設計者の意図しない権限の第三者による発見の防止(不正操作の糸口を見せない)

やりたいこと

ではポリシーレベルではどのようなことが必要になるでしょうか?

  • IAMポリシー一覧の取得
  • 個別のIAMポリシーの内容の取得
  • IAMポリシーの変更
  • IAMポリシーの削除
  • IAMポリシーの自身へのアタッチ・デタッチ

実際のポリシー例

実際のポリシーはこのようになります。

Condition Keyで見せたくないIAMポリシーを一部に絞ることも可能です。絞らない場合はCondition Keyを使用しないようにします。

まとめ

今回は汎用的ながら、ぜひ設定しておきたいIAMポリシーについて書いてみました。最小権限の原則に加えて、このような制限も加えてセキュリティレベルをアップしていきましょう!