🍋

【AWS】IAMとは?初心者向け IAM 入門 🔰

2024/05/15に公開

はじめに

こんにちは、Takeです。都内の自社開発企業でエンジニアとして働いています。

今回はIAMまわりについて触れる機会があったので、この際に全体像と具体的な役割を理解するために学んだことをまとめてみました。

本記事ではIAMの基本概念、ポリシーの構成要素、具体的な使用例について学んだことを共有していきます。

IAMとはなんぞや?

IAM(Identity and Access Management)とは、IDとアクセス権を管理する機能である。具体的には、誰がどのサービスにアクセスできるのかを許可または拒否することができる。

  • AWSを利用する人とその権限の範囲を管理するのがIAMの役割である。

https://dev.classmethod.jp/articles/aws-iam-beginner/

IAMポリシーとはなんぞや?

IAMポリシーとは、アクセス管理のルールを記述したドキュメントのこと

ポリシーはJSON形式で記述され、誰がどのAWSサービスのどのリソースに対してどんな操作を許可する(または許可しない)かを定義する。これにより、詳細なアクセス制御が可能となる。

以下がIAMポリシーの基本構造である。

  • 誰が
  • どのAWSサービスの
  • どのリソースに対して
  • どんな操作を
  • 許可する or 許可しない

https://dev.classmethod.jp/articles/aws-iam-policy/

IAMポリシー許可とはなんぞや?

IAMポリシーの許可とは、特定のアクションを実行する権限を与えることを意味する。

許可ポリシーは「Allow」として指定され、ユーザーやロールに適用される。逆に、特定のアクションを禁止する場合は「Deny」として指定する。

AWSのベストプラクティスとして、デフォルトではすべてのアクションは拒否される。

そのため、必要なアクションのみを明示的に許可する形でポリシーを設計することが推奨される。
これにより、意図しない権限の拡大を防ぐことができるメリットがある。

IAMポリシーの例

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::example-bucket/*"
    }
  ]
}

このポリシーは、指定されたS3バケット内のオブジェクトに対する読み取り権限を許可するものである。

ポリシーを適用することで、ユーザーはバケット内のオブジェクトを読み取ることができるが、他の操作(書き込みや削除など)は許可されない限りできない。

https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/access_policies.html

まとめ

IAMはAWS環境におけるセキュリティ管理の基盤となる重要な機能である。適切なIAMポリシーを設計・適用することで、組織全体のセキュリティを強化し、効率的なアクセス管理を実現できる。

最後に

ここまで読んでいただきありがとうございました!
今回の記事が良かったと思ったらぜひ「いいね」を押していただけると嬉しいです 🎉

noteでも記事を執筆していますので、ぜひチェックしてみてください。
https://note.com/take_lifelog/n/n58df7ce7af6f

他にもこのようなことについて記載しているのでお読みいただければ幸いです。

https://zenn.dev/take_tech/articles/275e5f4242973d

https://zenn.dev/take_tech/articles/374817f256ec9d

最後までお読みいただき、誠にありがとうございました!

Discussion