LoginSignup
1
2

More than 3 years have passed since last update.

AWS IAM( Identity and Access Management)とは

Last updated at Posted at 2020-03-03

IAM( Identity and Access Management)とは

•AWS Identity and Access Management (IAM) は、AWS リソースへのアクセスを安全に管理するための ウェブサービスです。IAM を使用して、リソースを使用するために認証 (サインイン)され、許可された (アクセス許可を持つ) ユーザーを制御します。
• 各AWSリソースに対して別々のアクセス権限をユーザー毎に付与できる
多要素認証(Multi-Factor Authentication : MFA)によるセキュリティの強化
• 一時的な認証トークンを用いた権限の委任
• 他のIDプロバイダーで認証されたユーザーにAWSリソースへの一時的なアクセス
• 世界中のAWSリージョンで同じアイデンティティと権限を利用可能
• データ変更は結果整合性を保ちながら全リージョンに伝搬
• AWS IAM自体の利用は無料

主要トピック

スクリーンショット 2020-03-03 11.14.43.png

1. ユーザー(ルートユーザーとIAMユーザー)

ルートユーザ

  • AWS ルートユーザはAWS アカウントの作成時およびAWS へのサインインに使用するアカウント。アカウント内の全てのリソースに無制限にアクセスできる
  • また、各サービスのマネジメントコンソールにはルートユーザーとしてサインインできる。
  • アカウントの作成時に指定したメールアドレスとパスワードの組み合わせをルートユーザー認証情報と呼ぶ。
  • 公式ではセキュリティ的な観点から「日常のアクセスには、ルートユーザー認証情報を使用しないことを推奨」している。 スクリーンショット 2020-03-03 11.29.51.png

IAMユーザー

IAMポリシー内でAWSサービスを利用できるユーザー。基本操作はIAMユーザーで実施する。

2.グループ

IAMグループ

  • 同じ権限を持ったユーザーの集まり。
  • グループはAWSへのアクセス認証情報は保持しません。認証はあくまでユーザーで行い、グループは認証されたユーザーかどういった権限(サービスの利用可否)を持つかを管理します。
  • グループの目的は、権限を容易かつ正確に管理する事。
  • 複数のユーザーに同一の権限を個別に与えると、権限の付与漏れや過剰付与などのミス発生が高くなる。 スクリーンショット 2020-03-03 11.48.45.png スクリーンショット 2020-03-03 11.32.06.png

3.ポリシー(IAMポリシー)

  • IAMアイデンティティやAWSリソースに関連づけることによってアクセス許可を定義することができるオブジェクト
  • AWSサービスやAWSリソースに対する操作権限をJSON形式で定義したものがIAMポリシー
  • ポリシードキュメントは1つ以上のStatementブロックで構成
項目 内容
Version IAMポリシーの文法バージョン
Effect ここで定義するポリシーが許可を与えるポリシー(Allow)か拒否するポリシー(Deny)かを設定
Action 「どのAWSサービス」に対する「どのような操作」を許可(拒否)するかを設定
Resource 「どのAWSリソース」に対する操作を許可(拒否)するかを設定

スクリーンショット 2020-03-03 12.03.27.png

管理ポリシー

AWSが提供する代表的なPolicy(管理者権限、EC2フルアクセスなど)と利用者が作成するカスタムポリシーがあります。どちらの場合も、Management PolicyはUserやRoleに与えることができるため、なんらかのPolicyを幾つかのUserやRoleで再利用する場合に便利です。

よく使われるもの

AdministratorAccess (管理者権限)
ReadOnlyAccess (読み込み権限)
AmazonEC2FullAccess (EC2に関する全権限)
AmazonS3FullAccess (S3に関する全権限)
AmazonS3ReadOnlyAccess (S3に関する読み込み権限)
スクリーンショット 2020-03-03 12.03.44.png

インラインポリシー

Inline Policy(インラインポリシー)は、細かくアクセス許可を設定できますが、各Userや各Roleに直接設定するため、再利用はできません(Groupに設定した場合は、属するUser全体に適用できます)。

Inline PolicyはPolicy DocumentにJSON形式で記述します。 Policy Documentでは、どんなリソースに対し、どんなアクションを許可(不許可)とするかを細かく設定できます。
スクリーンショット 2020-03-03 12.04.20.png

参考 AWS : IAMについて今更学ぶ

4.ロール(IAMロール)

  • AWSサービスやアプリケーション等のエンティティに対してAWSリソースの操作権限を付与するための仕組み
  • ユーザーまたはアプリケーションがロールを一時的に“引き受ける”ことで関連付けられたアクセス許可を受けることができる
  • IAMユーザーやグループには紐付かない スクリーンショット 2020-03-03 12.10.57.png

A.AWSリソースへの権限付与

EC2インスタンス上で稼働するアプリケーションに一時的にAWSリソースへのアクセスする権限を与えたい

B.クロスアカウントアクセス

複数のAWSアカウント間のリソースを一つのユーザーで操作したい

C.IDフェデレーション

社内のADサーバーに登録されているアカウントを使用して、AWSリソースにアクセスしたい

D.WEB IDフェデレーション

FacebookやGoogleアカウントを使用してAWSリソースにアクセスしたい

AWSリソースにアクセスするしくみ

スクリーンショット 2020-03-03 10.58.37.png

最後に

まだまだわからない部分もありますが、イメージしやいように
アップデートもしていきたいと思います。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2