<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>CloudFormation – AichiLog</title>
	<atom:link href="https://aichi.blog/tag/cloudformation/feed/" rel="self" type="application/rss+xml" />
	<link>https://aichi.blog</link>
	<description>学びて富み　富みて学ぶ</description>
	<lastBuildDate>Tue, 10 Jun 2025 06:38:36 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://aichi.blog/wp-content/uploads/2021/12/cropped-915AB649-D1E9-4810-9658-CB8CE1B605FD.JPEG-2-32x32.jpeg</url>
	<title>CloudFormation – AichiLog</title>
	<link>https://aichi.blog</link>
	<width>32</width>
	<height>32</height>
</image> 
<atom:link rel="hub" href="https://pubsubhubbub.appspot.com"/>
<atom:link rel="hub" href="https://pubsubhubbub.superfeedr.com"/>
<atom:link rel="hub" href="https://websubhub.com/hub"/>
<atom:link rel="self" href="https://aichi.blog/tag/cloudformation/feed/"/>
	<item>
		<title>CloudFormationのスタック削除時に発生する「Role is invalid or cannot be assumed」エラーの解決方法</title>
		<link>https://aichi.blog/cloudformation-role-error/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=cloudformation-role-error</link>
		
		<dc:creator><![CDATA[愛知郎]]></dc:creator>
		<pubDate>Tue, 01 Apr 2025 07:59:41 +0000</pubDate>
				<category><![CDATA[AWS]]></category>
		<category><![CDATA[CloudFormation]]></category>
		<category><![CDATA[IAM]]></category>
		<category><![CDATA[エラー解決]]></category>
		<guid isPermaLink="false">https://aichi.blog/cloudformation-role-error/</guid>

					<description><![CDATA[<p>AWS CloudFormation でスタックを削除しようとした際に、次のようなエラーが発生することがあります: Role arn:aws:iam::795600592301:role/CFn-cicd-CFnRole [&#8230;]</p>
<p>The post <a href="https://aichi.blog/cloudformation-role-error/">CloudFormationのスタック削除時に発生する「Role is invalid or cannot be assumed」エラーの解決方法</a> first appeared on <a href="https://aichi.blog">AichiLog</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>AWS CloudFormation でスタックを削除しようとした際に、次のようなエラーが発生することがあります:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers language-" data-lang="" data-show-lang="1"><code class="language-" data-hcb-clip="0">Role arn:aws:iam::795600592301:role/CFn-cicd-CFnRole-yXR5dzw2KIcH is invalid or cannot be assumed</code></pre>
<p><button class="hcb-clipboard" data-clipboard-target="[data-hcb-clip=&quot;0&quot;]" data-clipboard-action="copy" aria-label="コードをクリップボードにコピーする"></button></div>
<p>このエラーは CloudFormation が指定された IAM ロールを &#8220;assume&#8221; (引き受け)ようとした際に発生します。以下、原因と実際の対処方法を解説します。</p>
<p>
  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">原因</a></li><li><a href="#toc2" tabindex="0">解決方法</a><ol><li><a href="#toc3" tabindex="0">方法1. 信頼ポリシーをCloudFormation対応に修正</a></li><li><a href="#toc4" tabindex="0">方法2. CLIでの修正例</a></li><li><a href="#toc5" tabindex="0">方法3. CloudFormation 以外のサービスも使う場合</a></li></ol></li><li><a href="#toc6" tabindex="0">おわりに</a></li></ol>
    </div>
  </div>

<h2><span id="toc1">原因</span></h2>
</p>
<p>CloudFormation はスタック作成または削除の際に IAM ロールを &#8220;AssumeRole&#8221; する必要があります。しかし、以下のような信頼ポリシーだと CloudFormation はこのロールを引き受けません:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers language-json" data-lang="json" data-show-lang="1"><code class="language-json" data-hcb-clip="1">{
  "Effect": "Allow",
  "Principal": {
    "AWS": "arn:aws:iam::795600592301:root"
  },
  "Action": "sts:AssumeRole",
  "Condition": {}
}</code></pre>
<p><button class="hcb-clipboard" data-clipboard-target="[data-hcb-clip=&quot;1&quot;]" data-clipboard-action="copy" aria-label="コードをクリップボードにコピーする"></button></div>
<p>これは「同じアカウントの全IAMユーザー/ロールは使える」という意味ですが、CloudFormationサービスは <code>cloudformation.amazonaws.com</code> として書かれるので、上記の設定だけでは足りません。</p>
<p><h2><span id="toc2">解決方法</span></h2>
</p>
<p><h3><span id="toc3">方法1. 信頼ポリシーをCloudFormation対応に修正</span></h3>
</p>
<p>IAM ロールに次のような信頼ポリシーを設定することで、CloudFormation が引き受けるようになります:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers language-json" data-lang="json" data-show-lang="1"><code class="language-json" data-hcb-clip="2">{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "cloudformation.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}</code></pre>
<p><button class="hcb-clipboard" data-clipboard-target="[data-hcb-clip=&quot;2&quot;]" data-clipboard-action="copy" aria-label="コードをクリップボードにコピーする"></button></div>
<p><h3><span id="toc4">方法2. CLIでの修正例</span></h3>
</p>
<p>上記の信頼ポリシーを AWS CLI を使って適用する方法:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers language-bash" data-lang="bash" data-show-lang="1"><code class="language-bash" data-hcb-clip="3">aws iam update-assume-role-policy \
  --role-name CFn-cicd-CFnRole-yXR5dzw2KIcH \
  --policy-document '{
    "Version": "2012-10-17",
    "Statement": [
      {
        "Effect": "Allow",
        "Principal": {
          "Service": "cloudformation.amazonaws.com"
        },
        "Action": "sts:AssumeRole"
      }
    ]
  }'</code></pre>
<p><button class="hcb-clipboard" data-clipboard-target="[data-hcb-clip=&quot;3&quot;]" data-clipboard-action="copy" aria-label="コードをクリップボードにコピーする"></button></div>
<p><h3><span id="toc5">方法3. CloudFormation 以外のサービスも使う場合</span></h3>
</p>
<p>このロールを CodePipeline や Lambda も使う場合は、Principal を複数指定して両方に対応させましょう:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers language-json" data-lang="json" data-show-lang="1"><code class="language-json" data-hcb-clip="4">"Principal": {
  "AWS": "arn:aws:iam::795600592301:root",
  "Service": "cloudformation.amazonaws.com"
}</code></pre>
<p><button class="hcb-clipboard" data-clipboard-target="[data-hcb-clip=&quot;4&quot;]" data-clipboard-action="copy" aria-label="コードをクリップボードにコピーする"></button></div>
<p><h2><span id="toc6">おわりに</span></h2>
</p>
<p>この問題は、ロールがあるのに assume できないというミスマッチな情報から原因を探るため、初心者にとってはとても難解な障害です。</p>
<p>同じエラーに迷った方は、IAM ロールの信頼ポリシーを確認し、CloudFormation サービスが Assume できるようになっているかどうかをチェックしてみてください。</p>
<p>なお、この設定を改めたあとは CloudFormation スタックの削除が通常どおりに実行できるはずです。</p><p>The post <a href="https://aichi.blog/cloudformation-role-error/">CloudFormationのスタック削除時に発生する「Role is invalid or cannot be assumed」エラーの解決方法</a> first appeared on <a href="https://aichi.blog">AichiLog</a>.</p>]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
