IAM(AWS)

AWS
この記事は約3分で読めます。
スポンサーリンク

IAMはユーザーアカウントとユーザーアカウント権限を管理するサービスと思われがちですが、実際には「ユーザー及びAWSサービスの権限管理」が主な機能になります。
権限設定を行い「ユーザーに割り当てる」のか、「EC2などのS3に割り当てるのか」という管理を行います。

IAMユーザー

管理コンソールへログインするユーザーアカウントになります。
ルートユーザーは権限が強すぎるので、作業用のIAMユーザーを作成して運用することが必須です。
プログラムからIAMユーザー権限で作業ができるようにするアクセスキーを発行することもできますが、極力使用せずIAMロールを使用することが基本です。
アクセスキーを使用するケースとしては、AWS環境外からAWSサービスを操作するという場合くらいになります。(PC端末からAWS CLIを使用するなど)

ポリシーとロール

ポリシーは「操作権限」を定義するものになります。
例えば「特定のS3バケットの読み取り権限を与える」「RDSを作成する権限を与える」という指定を行います。
AWSで定義されているポリシーが既にありますので、そちらを使用するのが基本です。「特定の条件」を付与する場合などAWSで定義されているポリシーでは要求を満たせない場合に新規で作成します。

作成したポリシー(権限)はIAMユーザーに割り当てるのではなく、IAMグループに割り当ててからIAMユーザーに適用するという形を取ります。
EC2などのAWSサービスに割り当てる場合はIAMグループの代わりにIAMロールにポリシーを割り当ててからIAMロールをAWSサービスに割り当てます。

Security Token Service(STS)

ポリシーを割り当てた後に権限があるかどうかを判断する仕組みとしてSTSが使用されます。
割り当てられたロールを使用してアクセスする場合、STSからトークンを取得し、トークンの情報を使用してAWSサービスへのアクセス許可が行われます。
通常はバックグラウンドで実行されている動作になります。

Switch Role

大規模環境で複数のAWSアカウントを使用している場合に用いられます。
AWSアカウントを複数使用するシステムの場合は各AWSアカウント環境にIAMユーザーやポリシーを設定していくことになりますが、作業量が膨大になり、かつ作業漏れも発生します。

そのような場合、1つのAWSアカウント環境にIAMユーザーを作成し集中管理します。
その他の環境にはポリシーを適用したIAMロールのみを作成しユーザーに紐づけるIAMロールを切り替え(Switch)し必要な操作権限を得る仕組みです。

コメント

タイトルとURLをコピーしました