カテゴリ: AWS IAM 更新日: 2026/06/27

IAMポリシーでできること・アクション一覧・条件の書き方まとめ【初心者向けAWS IAM】

241
IAMポリシーでできること・アクション一覧・条件の書き方まとめ

先生と生徒の会話形式で理解しよう

生徒

「IAMポリシーで具体的に何ができるのか、行動(アクション)や条件設定の書き方がよくわかりません…」

先生

「IAMポリシーを理解するためには、許可できるアクションや条件式の書き方を押さえておくことが大切です。一緒に整理しましょう。」

生徒

「お願いします!初心者にもわかりやすく、IAMポリシーの使い方を教えてください!」

先生

「それでは、IAMポリシーでできること、指定できるアクション一覧、条件の書き方について丁寧に解説していきます!」

1. IAMポリシーでできることとは?基本機能の概要

1. IAMポリシーでできることとは?基本機能の概要
1. IAMポリシーでできることとは?基本機能の概要

AWS IAMポリシーを使うと、AWSリソースに対して

  • どのアクションを許可または拒否するか(例:s3:GetObject)
  • どのリソースに対して適用するか(例:ARN指定)
  • どの条件で適用するか(例:特定のIPからのアクセスのみ許可)

という三要素で、アクセスをきめ細かく制御できます。これによりセキュリティを強化しつつ、柔軟な運用が可能になります。

2. AWSで使える主なアクション一覧と分類

2. AWSで使える主なアクション一覧と分類
2. AWSで使える主なアクション一覧と分類

AWSのサービスごとに、使用できるアクション(Action)は多数あります。代表的なアクションをサービス別にまとめると以下のようになります:


+------------+-----------------------------+
| サービス     | 主なアクション名              |
+------------+-----------------------------+
| S3         | s3:ListBucket, s3:GetObject, s3:PutObject |
| EC2        | ec2:StartInstances, ec2:StopInstances    |
| RDS        | rds:DescribeDBInstances, rds:CreateDBInstance |
| Lambda     | lambda:InvokeFunction, lambda:CreateFunction |
| IAM        | iam:CreateUser, iam:AttachRolePolicy     |
+------------+-----------------------------+

これらはほんの一例ですが、最初に知っておきたいよく使うアクションです。ActionはAWSドキュメントで正式名称を確認しましょう。

3. IAMポリシーにおける条件(Condition)の使い方

3. IAMポリシーにおける条件(Condition)の使い方
3. IAMポリシーにおける条件(Condition)の使い方

Conditionを使うことで、条件に応じたアクセス制御ができます。たとえば「指定されたIPアドレスからのアクセスだけ許可」「特定のタグ付きリソースに限定して許可」などです。

Conditionの基本構文は以下のとおりです:


{
  "Effect": "Allow",
  "Action": "s3:GetObject",
  "Resource": "arn:aws:s3:::example-bucket/*",
  "Condition": {
    "IpAddress": { "aws:SourceIp": "203.0.113.0/24" },
    "StringEquals": { "aws:RequestTag/Project": "MyProject" }
  }
}

主なCondition演算子には:

  • IpAddress/NotIpAddress:IPアドレス帯で制限する
  • StringEquals/StringNotEquals:文字列一致、タグやAWSヘッダーで絞る
  • Bool:属性が真偽値である場合の制御

AWSの基本用語や仕組みを、図解でサクッと理解したい人には、 入門の定番書がこちらです。

AWSの基本が全部わかる教科書をAmazonで見る

※ Amazon広告リンク

4. 条件による細かなアクセス制御の例

4. 条件による細かなアクセス制御の例
4. 条件による細かなアクセス制御の例

以下は、特定のVPCエンドポイント経由でのアクセスのみ許可する例です:


{
  "Effect": "Allow",
  "Action": "s3:ListBucket",
  "Resource": "arn:aws:s3:::my-bucket",
  "Condition": {
    "StringEquals": { "aws:sourceVpce": "vpce-1234567890abcdef0" }
  }
}

これにより、安全なネットワークからのみS3バケットの一覧を取得できるようになります。

5. IAMポリシー設計のポイントまとめ

5. IAMポリシー設計のポイントまとめ
5. IAMポリシー設計のポイントまとめ
  • 最小権限の原則:必要なActionだけを許可する
  • リソース指定の精細化:ワイルドカードを必要以上に使わない
  • Conditionを活かす:IP、タグ、日付など状況に応じた制限をうまく使う
  • ActionとConditionの組み合わせを意識:柔軟な制御とセキュリティを両立させる設計を心がける

これらがIAMポリシー運用における基本の考え方です。

まとめ

まとめ
まとめ

IAMポリシーはAWSセキュリティの中心となる重要な仕組み

今回はAWS IAMポリシーの基本から応用まで、できること、アクション一覧、Conditionの書き方、設計の考え方について体系的に理解しました。IAMポリシーはAWSにおけるアクセス制御の中核であり、どのユーザーがどのリソースに対してどの操作を実行できるかを細かく制御するための非常に重要な機能です。IAMポリシーを正しく理解することは、AWSのセキュリティ対策、クラウド運用、システム設計において必須のスキルとなります。

三つの要素でアクセス制御を理解することが重要

IAMポリシーは主にAction、Resource、Conditionの三つの要素で構成されます。Actionは実行できる操作を意味し、Resourceは対象となるAWSリソースを示し、Conditionはその操作を許可する条件を指定します。この三つを組み合わせることで、非常に柔軟で精密なアクセス制御が可能になります。例えばS3のオブジェクトを特定のIPアドレスからのみ取得できるようにするなど、実務で求められる細かい制御を実現できます。

アクションの理解がポリシー設計の第一歩

IAMポリシーを理解するうえで重要なのがアクションの理解です。S3であればs3GetObject、EC2であればec2StartInstancesといったように、サービスごとに操作を示すアクションが定義されています。これらを正しく選択することで、不要な権限を与えずに安全な設計が可能になります。初心者のうちは代表的なアクションを覚え、徐々に必要に応じてドキュメントを参照する習慣を身につけることが大切です。

Conditionを活用することでセキュリティが大幅に向上する

ConditionはIAMポリシーの中でも特に重要な要素です。単純に許可するだけでなく、どの条件で許可するかを指定することで、セキュリティレベルを大きく向上させることができます。IP制限、時間帯制限、タグによる制御などを組み合わせることで、より安全で実務的なアクセス制御が実現できます。例えば特定のネットワークからのみアクセスを許可することで、不正アクセスのリスクを大幅に低減できます。


public class IamPolicyConditionExample {
    public static void main(String[] args) {

        String ip = "203.0.113.5";

        if (ip.startsWith("203.0.113")) {
            System.out.println("許可されたIPアドレスです");
        } else {
            System.out.println("アクセス拒否されました");
        }

    }
}

許可されたIPアドレスです

最小権限の原則を守ることが最重要ポイント

IAMポリシー設計において最も重要な考え方は最小権限の原則です。これは必要最小限の権限だけを付与するという考え方であり、セキュリティ事故を防ぐために非常に重要です。すべての操作を許可するのではなく、必要なアクションだけを許可し、不要な権限は一切与えないようにすることで、リスクを最小限に抑えることができます。

ワイルドカードの使い方には注意が必要

IAMポリシーではワイルドカードを使うことで柔軟な設定が可能ですが、使いすぎるとセキュリティリスクが高まります。例えば全リソースに対してすべての操作を許可する設定は非常に危険です。できるだけ具体的なリソースを指定し、必要な範囲に限定することが重要です。初心者のうちは広く許可しがちですが、徐々に細かく制御する意識を持つことが大切です。

実務ではロールと組み合わせて使うことが多い

IAMポリシーは単体で使うだけでなく、IAMロールと組み合わせて利用することが一般的です。例えばEC2インスタンスやLambda関数にロールを付与することで、安全にAWSリソースへアクセスできます。ユーザーに直接権限を付与するのではなく、ロールを経由することで管理性とセキュリティが向上します。

継続的な見直しと改善が重要

IAMポリシーは一度作成して終わりではなく、定期的に見直すことが重要です。システムの変更やユーザーの追加により、不要な権限が残ることがあります。不要な権限は削除し、常に最適な状態を維持することで、安全なAWS環境を保つことができます。Access Analyzerなどのツールを活用することで、未使用権限の検出も可能です。

初心者は基本構造を繰り返し理解することが近道

IAMポリシーは最初は難しく感じますが、基本構造であるAction、Resource、Conditionを繰り返し理解することで自然と使いこなせるようになります。AWS IAMポリシー、アクション一覧、条件指定、最小権限といったキーワードを意識しながら学習を進めることで、実務でも通用する知識が身につきます。焦らずに一つずつ理解していくことが重要です。

先生と生徒の振り返り会話

生徒

IAMポリシーは三つの要素で考えると分かりやすいですね。

先生

その通りですActionとResourceとConditionが基本です。

生徒

Conditionを使うとかなり細かく制御できますね。

先生

はいセキュリティを高めるために重要なポイントです。

生徒

最小権限の原則は特に意識しないといけないですね。

先生

それが守られていれば大きな事故は防げます。

生徒

ワイルドカードは便利ですが危険でもありますね。

先生

必要最小限で使うことが大切です。

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

AWSのIAMポリシーとは一体何ですか?初心者にもわかりやすく概要を教えてください。

AWSのIAMポリシー(Identity and Access Management Policy)とは、AWS上のさまざまなリソース、例えばS3バケットやEC2インスタンスなどに対して、「誰が」「どのような操作を」「どのリソースに対して」「どのような条件で」実行できるかを定義したルール設定のことです。プログラミング初心者の方にとっては、アプリケーションの権限管理を行うための「許可証」のようなものだと考えると理解しやすいでしょう。このポリシーをユーザーやグループ、ロールに割り当てることで、クラウド環境のセキュリティを強固に保つことができます。具体的には、ファイルの読み取りは許可するが削除は禁止するといった、きめ細やかなアクセス制御が可能になるのがIAMポリシーの大きな特徴です。
AWS IAMの一覧へ
新着記事
Python
NumPyのdtypeとは?データ型の意味と仕組みを初心者向けに解説
NumPyのdtypeとは?データ型の意味と仕組みを初心者向けに徹底解説
Dart
Dartのクラスの作り方!定義・インスタンス生成の基礎
Dartのクラスの作り方を完全解説!初心者でも理解できるクラス定義とインスタンス生成の基礎
Java
Javaの同一性と同値性
Javaの同一性と同値性をわかりやすく解説!初心者向けの基礎知識
AWS
【AWS】s3 lsコマンドの使い方まとめ【オプション・ワイルドカード・日付指定】
【AWS】s3 lsコマンドの使い方まとめ【オプション・ワイルドカード・日付指定】
人気記事
Java
Java の Random クラスを使ってランダムな数値を生成する方法
JavaのRandomクラスの使い方を完全ガイド!初心者でもわかる乱数生成
Java
Java の getter メソッドと setter メソッドの使い方
Javaのgetterメソッドとsetterメソッドの使い方を完全ガイド!初心者でもわかるアクセス方法
AWS
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説
AWS
【AWS】S3の料金体系まとめ!無料枠・課金ポイント・見積もり方法まで
【AWS】S3の料金体系まとめ!無料枠・課金ポイント・見積もり方法まで

🔌 USBポート不足を解消

Type-C 1本で拡張。
開発・作業環境を一気に快適に

UGREEN USB-Cハブを見る

※ Amazon広告リンク