1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Execution Roleって何?

Last updated at Posted at 2024-10-09

AWSのサービスを利用する中で「ExecutionRole」を作成する機会があり、気になったので調べてみました。
ちなみに「Execution」直訳で「実行」「遂行」などになります。

Executionロールとは?

AWSのサービスが特定のタスクを実行する際に使用するIAMロール。例えば、AWS CloudFormationAWS Control Towerなどがスタックやリソースをプロビジョニング(作成)する際に、このロールを引き受けて必要な権限を持って操作を行う際に使われる。

具体的なケース

  • AWS Control Tower: ガードレールやアカウントプロビジョニングなどの管理タスクを実行する際に使用。
    • 例えば、AWS Control Towerのランディングゾーンにアカウントを登録する際、AWSControlTowerExecutionというIAMロールを、登録するアカウント内に作成する必要があった。

また、Executionロール作成時の信頼ポリシーに含まれるstsについても説明します。

STS(Security Token Service)とは?

STSはAWSサービス間の安全なアクセス管理を支援し、一時的な認証情報を提供してセキュリティを強化。一時的な認証情報により、必要な権限を最小限の期間で提供し、セキュリティリスクを低減する。

STSの概要

一時的なセキュリティ認証情報を発行

  1. 一時的なセキュリティトークンの発行
    短期間有効なトークンを提供し、長期間有効な認証情報を回避。
  2. フェデレーテッドアクセスのサポート
    外部のアイデンティティプロバイダー(例:企業のActive Directory)と連携し、AWSリソースへのアクセスを実現。
  3. ロールの引き受け
    ユーザーやサービスが特定のIAMロールを一時的に引き受ける際に使用。

サービス間の呼び出しにおけるSTSの役割

AWSの各サービスが他のサービスを呼び出す際、通常はIAMロールを使用して必要な権限を付与。このプロセスでSTSが活用される。

  1. IAMロールの作成
    呼び出し元のサービス(サービスA)が他のサービス(サービスB)にアクセスするためのIAMロールを作成し、必要な権限を付与。
  2. 信頼ポリシーの設定
    ロールの信頼ポリシーに、サービスAがこのロールを「引き受ける(AssumeRole)」ことを許可。
  3. ロールの引き受け
    サービスAがサービスBにアクセスする際、STSのAssumeRole APIを呼び出して一時的な認証情報(アクセスキー、シークレットキー、セッショントークン)を取得。
  4. アクセスの実行
    サービスAは取得した一時的な認証情報を使用して、サービスBに対する操作を実行。

ExecutionロールとSTSの関係

Executionロールには信頼ポリシーが設定されており、特定のエンティティ(例:CloudFormationやControl Tower)がそのロールを「引き受ける(AssumeRole)」ことが許可されている。この引き受けの際にSTSが利用され、一時的なセキュリティ認証情報が発行される。これにより、サービスは必要な権限を持って安全にタスクを実行できる。

まとめ

  • Executionロール: AWSサービスがリソースを操作する際に使用するIAMロール。
  • STS(Security Token Service): 一時的な認証情報を発行し、ロールの引き受けなどを安全に行うためのサービス。
  • ExecutionロールにはSTSの信頼ポリシーが設定されており、サービスがロールを引き受けて必要な権限を取得する際にSTSが活用される。
1
0
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
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?