LoginSignup
0

More than 3 years have passed since last update.

AWSを勉強する - IAM

Last updated at Posted at 2020-11-10

AWS Identity and Access Management(IAM)は、AWSを使用するユーザーのアクセス権限を管理する。

AWSのアカウントの種類

ルートユーザー

AWSアカウント作成時に作られるIDアカウント
ルートユーザーは、ネットワーク上のどこからでも操作できる権限を持っている。(Administrator的存在)
AWSでシステムを構築・運用する際は、このアカウントを使うことは極力避ける!!!

ルートユーザーしかできないこと

  • AWSルートアカウントのメールアドレスやパスワードの変更
  • IAMユーザーの課金情報へのアクセスに関するactivate/deactivate
  • 他のAWSアカウントへのRoute53のドメイン登録の以降
  • CloudFrontのキーペアの作成
  • AWSサービス(サポートなど)のキャンセル
  • AWSアカウントの停止
  • コンソリデイテッドビリングの設定(複数アカウントを統合した請求の設定)
  • 脆弱性診断フォームの提出(AWSに脆弱性の診断ができる)
  • 逆引きDNS申請

IAMユーザー

AWSを利用する各利用者向けに作成されるアカウント
システム構築・運用する際は、このアカウントを使う。

AWS Organizations(組織アカウント)

IAMのアクセス管理を大きな組織でも楽に実施できるようにするサービス

  • 複数のAWSアカウントを一元管理:AWSアカウントをグループ化してポリシーを適用して一元的に管理できる
  • 一括請求:複数AWSアカウントの請求をひとまとめにする一括決済が可能
  • 新規アカウント作成の自動化:コンソール、SDK、CLIでAWSアカウントを新規作成して、作成内容をログ管理できる

IAMの機能

IAMには次の4つの機能がある。

  • IAMポリシー
  • IAMユーザー
  • IAMグループ
  • IAMロール

IAMポリシー

Action(どのサービスの)、Resource(どういう機能や範囲を)、Effect(許可/拒否)という3つの大きなルールに基づいて権限を設定する。

ポリシー:ユーザーやグループ、ロールに付与する権限をオブジェクトとして管理する

  • インラインポリシー:対象ごとに作成・付与するポリシー
  • 管理ポリシー:1つのポリシーを複数のユーザーやグループに適用できる
    • AWS管理ポリシー:AWS側が用意しているポリシー
    • カスタマー管理ポリシー:ユーザー自身が管理するポリシー

基本的には、AWS管理ポリシーで基本的な権限を付与し、カスタマー管理ポリシーでIPアドレス制限などの制約を行う。
インラインポリシーは、管理が煩雑になるので、基本的には使わない。(一時的に個別のユーザーに管理を付与するときに利用するなど)

IAMユーザーとIAMグループ

ユーザーは、AWSを利用するために各利用者に1つずつ与えられる認証情報(ID)。
IAMユーザーの認証方法は、次の2つ

  • ユーザーIDとパスワード:Webコンソールにログインするときに使用。
  • アクセスキーとシークレットアクセスキー:CLIやAPIからAWSのリソースにアクセスする場合に使用。

グループは、同じ権限を持ったユーザーの集まり。
認証されたユーザーがどういった権限(サービスの利用可否)を持つかを管理する。

グループとユーザーは、多対多の関係である。

IAMユーザー

1アカウントで5000ユーザーまで作成可能

設計内容

  • ユーザー名
  • パス(オプション):パスを元にユーザーの検索ができ、組織階層やプロジェクトなどを設定できる
  • 所属グループ:10のグループまで設定可能
  • パーミッション:AWSサービスへのアクセス権限

IAMグループ

1アカウントで300グループまで作成可能

設計内容

  • グループ名
  • パス
  • パーミッション:グループに設定したパーミッションは、IAMユーザーに付与したパーミッションと同時に評価する

IAMロール

一時的にAWSリソースへのアクセス権限を付与する場合に使用。

例)

  • AWSリソースへの権限付与:EC2インスタンス上で稼働するアプリケーションに一時的にAWSのリソースへアクセスする権限を与えたい
  • クロスアカウントアクセス:複数のAWSアカウント間のリソースを1つのIAMユーザーで操作したい
  • IDフェデレーション:社内のADサーバーに登録されているアカウントを使用して、AWSリソースにアクセスしたい
  • Web IDフェデレーション:FacebookやGoogleのアカウントを使用してAWSリリースにアクセスしたい

参考

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
0