2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

AssumeRoleについて調べてみた

Last updated at Posted at 2023-11-09

動機づけ

AWS認定試験の学習をしている際にAssumeRoleについての問題で行き詰まり、なかなか理解が難しく、それについて調べていくうちに記事にしようと思いました。

AssumeRoleとは

ここで、簡単にAssumeRoleとはなんぞやというお話をします。
まずは画像を見るとわかりやすいと思います。
スクリーンショット 2023-11-09 15.55.36.png

まずはIAMユーザーがSTS(一時的な認証情報を発行してくれるサービス)に対してIAMロール(ここではS3バケット内のオブジェクトを読み取るための権限)が欲しいとリクエストを送り、認証情報を返してもらいます。
画像でいう帽子のようなものがIAMロールです。
この少年は帽子を被ることによってS3を読み取ることができる力を手に入れたということになります。
※実際には、IAMロールと同じ力を一時的に得るといった形になります。
これらの説明から、AssumeRoleとは、IAMロールを引き受けるためのアクションを表します。

AssumeRoleを使ってどんなことができるのか

こちらもまず画像を先に貼っておきます。
スクリーンショット 2023-11-09 16.16.51.png

画像の通り、2つのアカウントA, Bがあります。
前提条件として、アカウントAにはLambda関数を実行するロールを、アカウントBにはS3バケットアクセスロールを作成します。
アカウントBにおけるIAMユーザーがアカウントAのlambda実行ロールを代行(AssumeRole)し、lambda関数を実行します。
そしてアカウントBのS3バケットアクセスロールをアカウントAが代行(AssumeRole)し、lambda関数がS3バケットにアクセスできるようになる。
このようなことが実現可能になります。
【補足】
こちらではアカウントBにおけるIAMユーザーがlambda関数を実行していますが、もちろんAssumeRoleを使わずアカウントAにおけるIAMユーザーがlambda関数を実行することも可能です。

最後に

最近AWSにおける学習を進めており、一つ一つのサービスを実際に触ってみたり、組み合わせてみたり、点と点が繋がる面白さを味わっています。
認定試験ではAWS CLF, SAAを取得しました。
SAA取得後、CloudTech というサブスク型のAWSにおけるオンラインスクールに出会い、気軽に入会してみました。認定試験における画像解説がとてもわかりやすく、ハンズオンも豊富にあり、より一層AWS学習が楽しくなっていきそうです!
気になる方は是非入会してみてください!

参考記事

2
1
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
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?