「AWS管理ポリシー」と「カスタマー管理ポリシー」と「インラインポリシー」の違い!

AWSでユーザーやロールに権限を付与するときに使うのがIAMポリシーです。しかしIAMポリシーには次の3種類があり、「どれを使えばいいの?」と迷ってしまう人が多いはずです。

  • AWS管理ポリシー(AWS managed policy)
  • カスタマー管理ポリシー(Customer managed policy)
  • インラインポリシー(Inline policy)

この記事では、各ポリシーの特徴・メリット・デメリット、どの場面で使うべきかをわかりやすく解説します。

AWS管理ポリシーとカスタマー管理ポリシーとインラインポリシーの「違い」

AWS管理ポリシーカスタマー管理ポリシーインラインポリシーの「違い」を以下の表にまとめます。

種類作成者再利用バージョン管理管理コスト
AWS管理ポリシーAWSできるなし(AWSが自動更新)最小
カスタマー管理ポリシーユーザーできるできる
インラインポリシーユーザーできないできない中〜高

AWS管理ポリシーカスタマー管理ポリシーは再利用できるため、複数のユーザー・グループ・ロールで同じ権限を共有することができます。しかし、インラインポリシーは単一のユーザー・グループ・ロールのみに適用させるため、再利用することができません。

それぞれのポリシーの使い分けは以下のように行います。

  • AWS管理ポリシー(AWS managed policy)
    • まず使うべきはポリシーはこれ。
    • AWSがベストプラクティスでアップデートしてくれるため、安全性も高い。
    • 一般的な権限を簡単に付与したい場合には最適なポリシーです。
  • カスタマー管理ポリシー(Customer managed policy)
    • 組織の「最小権限ポリシー」を作りたいとき。
  • インラインポリシー(Inline policy)
    • 特別な権限を「このロールだけ」に付けたいとき。
    • 利用できないので、誤って他のユーザーやロールにアタッチしてしまうことを防げる。

ではこれから、各ポリシーの特徴・メリット・デメリットについて解説します。

AWS管理ポリシー(AWS Managed Policy)

AWS管理ポリシーはAWSが公式で提供しているポリシーです。複数のユーザーやロールにアタッチできます。「簡単にアクセス権限を付けたいとき」や「権限の管理コストを下げたいとき」に使用します。

AWS管理ポリシーにはオレンジ色のAWSアイコンが付いています。

AWS管理ポリシー(AWS Managed Policy)

AWS管理ポリシーには次のようなものがあります。

  • AdministratorAccess
  • AmazonS3ReadOnlyAccess
  • AmazonEC2FullAccess
  • AWSLambdaBasicExecutionRole

AWS管理ポリシーの特徴・メリット・デメリットを以下に示します。

特徴

  • AWSが自動でアップデートしてくれる
  • AWSのベストプラクティスが反映されている

メリット

  • 初心者でも安全に使える
  • サービスごとに最適な権限が簡単につけられる
  • メンテ不要

デメリット

  • ユーザーが編集できないため、細かいカスタマイズはできない
  • 「権限が必要以上に広い」ケースもある

カスタマー管理ポリシー(Customer Managed Policy)

カスタマー管理ポリシーはユーザーが独自に作成して管理するポリシーです。再利用可能で、複数のユーザーやロールにアタッチできます。「組織独自のポリシーを統一管理したいとき」、「同じ権限セットを複数ロールで共通利用したいとき」、「セキュリティを強めたい(最小権限)」に使用します。

カスタマー管理ポリシーの特徴・メリット・デメリットを以下に示します。

特徴

  • JSON形式で自由にポリシーを作れる
  • 変更すると、アタッチしているユーザーやロールに一括反映される
  • バージョン管理あり

メリット

  • 組織に最適化した「最小権限ポリシー」を作れる
  • 作成したポリシーは複数のユーザーやロールにアタッチできる
  • 特定の動作に必要な能力だけを与えられる

デメリット

  • メンテナンスが必要
  • JSON記述が少し難しい

インラインポリシー(Inline Policy)

インラインポリシー(Inline policy)はユーザー、ロール、グループに「直接」埋め込むポリシーです。そのエンティティ(ユーザー / ロール)専用のポリシーとなります。「単一ロール専用の特別な権限を設定したいとき」や「他ロールへ誤付与を防ぎたいとき」に使用します。

インラインポリシーの特徴・メリット・デメリットを以下に示します。

特徴

  • そのエンティティに紐づき「使い回しは不可」
  • エンティティを削除するとポリシーも消える
  • 再利用不可、バージョン管理なし

メリット

  • 「このロールだけは絶対この権限!」という用途に最適
  • 誤って他のユーザーやロールにアタッチしてしまうことを防げる

デメリット

  • メンテが面倒
  • 内容を変更しても他のユーザーには共有されない

本記事のまとめ

この記事ではAWS管理ポリシー」と「カスタマー管理ポリシー」と「インラインポリシー」の違いについて説明しました。

AWSの権限設計はセキュリティにも直結する重要なポイントです。迷ったときは「AWS管理ポリシー → 必要があればカスタマー管理ポリシー → どうしても特定ロール専用ならインライン」という順番で選ぶと失敗しません。

お読みいただきありがとうございました。

スポンサーリンク