type
status
date
slug
summary
tags
category
icon
password
 

理論

AWS IAM ロールと信頼ポリシーの理解

IAM ロール(Identity and Access Management Role)は、AWS リソースやユーザーに権限を付与するためのものです。特定のロールを他の AWS アカウントのユーザーやサービスが「引き受ける」(assume)ことができるように、信頼ポリシーを設定する必要があります。

信頼ポリシー(Trust Policy)の役割

  • 信頼ポリシーは、ロールを引き受けることができるエンティティ(ユーザー、サービス、アカウントなど)を定義します。
  • ロールが引き受けられるためには、信頼ポリシーでそのエンティティに対して sts:AssumeRole アクションを許可する必要があります。

親アカウントと子アカウント間でのロールの引き受け

  • クロスアカウントアクセスの場合、子アカウントのリソース(例:EC2 インスタンス)が親アカウントのロールを引き受けるには、親アカウントのロールの信頼ポリシーで 子アカウントのリソースに対する sts:AssumeRole 許可が必要です。
  • 信頼ポリシーには、子アカウントの AWS アカウント ID もしくは IAM ユーザーやロール を指定し、アクセスを許可します。

ロール引き受けのための設定

  • 親アカウントでロールを作成する際、子アカウントの EC2 インスタンスやリソースがそのロールを引き受けられるように設定することが重要です。
  • もし、EC2 インスタンスが特定のロールを引き受ける権限がない場合、信頼ポリシーの設定ミスが原因です。

解決策:

  • 信頼ポリシーの修正: 親アカウントのロールに対して、子アカウントの EC2 インスタンスが引き受けられるように sts:AssumeRole 権限を追加します。
  • 必要な権限の明示的指定: 子アカウントに対する権限を明示的に許可することが重要です。

結論

クロスアカウントのロール引き受けを正しく設定するには、信頼ポリシーで対象のリソースに対して sts:AssumeRole を許可する設定を行う必要があります。この設定が適切でない場合、権限不足のエラーが発生します。

実践

一問道場

質問 #480
ソリューションアーキテクトは、既存の手動で作成された非本番環境からAWS CloudFormationテンプレートを作成しています。このCloudFormationテンプレートは必要に応じて削除および再作成できます。環境にはAmazon EC2インスタンスが含まれています。EC2インスタンスには、親アカウントでロールを引き受けるために使用されるインスタンスプロファイルがあります。
ソリューションアーキテクトはCloudFormationテンプレートでロールを再作成し、同じロール名を使用します。CloudFormationテンプレートが子アカウントで起動されると、EC2インスタンスは親アカウントでロールを引き受けることができなくなり、権限が不十分だというエラーが発生します。
この問題を解決するためにソリューションアーキテクトは何をすべきですか?
A. 親アカウントで、EC2インスタンスが引き受ける必要のあるロールの信頼ポリシーを編集します。sts:AssumeRole アクションを許可する既存のステートメントでターゲットロールARNが正しいことを確認し、信頼ポリシーを保存します。
B. 親アカウントで、EC2インスタンスが引き受ける必要のあるロールの信頼ポリシーを編集します。子アカウントのルートプリンシパルに対して sts:AssumeRole アクションを許可するステートメントを追加し、信頼ポリシーを保存します。
C. CloudFormationスタックを再度更新します。CAPABILITY_NAMED_IAM 機能のみを指定します。
D. CloudFormationスタックを再度更新します。CAPABILITY_IAM 機能と CAPABILITY_NAMED_IAM 機能の両方を指定します。

解説

背景:

  • AWS CloudFormation を使って、既存の手動で作成した非本番環境を再現しようとしています。
  • この環境には Amazon EC2 インスタンス があり、インスタンスには インスタンスプロファイル が設定されており、これを使って 親アカウント のロール(役割)を引き受ける(assume)ことができます。
  • その後、CloudFormation テンプレートでこのロールを再作成し、同じロール名を使用しています。
  • しかし、CloudFormation テンプレートを 子アカウント で起動すると、EC2 インスタンスは親アカウントのロールを引き受けられなくなり、「権限不足」 というエラーが表示されます。

問題の本質:

親アカウントのロールに設定されている 信頼ポリシー(trust policy)が、子アカウントの EC2 インスタンスがそのロールを引き受けることを許可していないため、権限エラーが発生しています。

解決方法:

この問題を解決するには、親アカウントのロールの 信頼ポリシー を修正して、子アカウントの EC2 インスタンスがそのロールを引き受けられるようにする必要があります。

各選択肢の説明:

  1. A. 親アカウントで、EC2 インスタンスが引き受ける必要のあるロールの信頼ポリシーを編集する
      • 正しい設定を確認して、ロールが正常に引き受けられるようにする方法です。ターゲットロール ARN(役割の識別子)が正しいことを確認し、設定を保存します。ターゲットロール ARN が正しいかを確認するだけでは、子アカウントからのアクセスを許可する設定にはなりません。
  1. B. 親アカウントで、EC2 インスタンスが引き受ける必要のあるロールの信頼ポリシーを編集し、子アカウントのルートプリンシパルに対して sts:AssumeRole アクションを許可する
      • これは 正解 です。親アカウントのロールの信頼ポリシーを修正し、子アカウント全体(または子アカウントのルートユーザー)がそのロールを引き受けられるようにする方法です。
  1. C. CloudFormationスタックを再度更新し、CAPABILITY_NAMED_IAM 機能のみを指定する
      • これは 解決策ではありませんCAPABILITY_NAMED_IAM は IAM リソースに関連する変更を許可するオプションですが、権限不足の問題の解決には関係ありません。
  1. D. CloudFormationスタックを再度更新し、CAPABILITY_IAMCAPABILITY_NAMED_IAM の両方を指定する
      • これも 解決策ではありませんCAPABILITY_IAMCAPABILITY_NAMED_IAM を指定することで IAM リソースの変更が許可されますが、根本的な権限不足の問題には関係しません。

正しい解決策:

  • B の選択肢が正解です。親アカウントのロールの信頼ポリシーを編集して、子アカウントの EC2 インスタンスがロールを引き受けられるように設定を変更することで、問題を解決できます。

まとめ:

  • 親アカウントのロールの信頼ポリシー子アカウントの EC2 インスタンスがロールを引き受けることを許可する設定を追加することが、最も効果的な解決方法です。
相关文章
クラウド技術の共有 | AWS Site-to-Site
Lazy loaded image
EKSでのWordPressデプロイ:KCNA-JP試験対策 (Kubernetes実践編)
Lazy loaded image
初心者向け!コンテナ化WordPressサイト構築ガイド(超詳細版)
Lazy loaded image
EFSを活用!AWS EC2でDockerを使ったWordPressサイト構築
Lazy loaded image
529-AWS SAP AWS 「理論・実践・一問道場」VPCエンドポイント
Lazy loaded image
528-AWS SAP AWS 「理論・実践・一問道場」Migration Evaluator
Lazy loaded image
481-AWS SAP AWS 「理論・実践・一問道場」Auroraレプリカ479-AWS SAP AWS 「理論・実践・一問道場」CloudFront 関数の活用
Loading...
みなみ
みなみ
一个普通的干饭人🍚
最新发布
02-生成AIパスポート試験対策:第2章「生成AI」
2025-2-1
01-生成AIパスポート試験対策:第1章「人口知能」
2025-2-1
究極のAWS認定 AI 実践者 AIF-C01 - 学習メモ
2025-1-27
不要再傻傻的直接买NISA啦
2025-1-27
Kubernetes、仮想マシンとコンテナの概念を超簡単に解説!
2025-1-24
529-AWS SAP AWS 「理論・実践・一問道場」VPCエンドポイント
2025-1-22
公告
🎉欢迎访问我的博客🎉
- 感谢您的支持 --
本站点于2024/09/01建立
👏主要分享IT相关主题👏
系统管理:
Redhat…
容器和编排:
Kubernetes、Openshift…
云计算:
AWS、IBM…
AI入门
以及技术笔记和考证经验
定期更新,欢迎互动。
感谢访问!
快速浏览相关标签