CloudFormation で特定ユーザだけ Invalid request provided が発生するときの対処方法

2021.09.21

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

困っていた内容

同じテンプレートを CloudFormation でデプロイしているのですが、特定のIAMユーザで実施した場合だけInvalid request providedで失敗します。なぜでしょうか?

Resource handler returned message: "Invalid request provided: AWS::ElasticLoadBalancingV2::ListenerRule Validation exception" (RequestToken: xxxxxx-xxxxxx-xxxxxx-xxxxxx, HandlerErrorCode: InvalidRequest)

どう対応すればいいの?

CloudTrail でエラー内容をご確認ください。

CloudFormation はユーザーに代わってAWSリソースを作成する仕組みのため、実際に発生したエラーメッセージを別のエラーメッセージで上書きする場合があります。そのため、実際はIAMユーザの権限不足(AccessDeniedException)で失敗していても、無効なリクエスト(InvalidRequest)と表示される場合があります。

エラーを確認する方法

CloudTrail コンソールを開き、「イベント履歴」をクリック。検索を楽にするため、歯車アイコンをクリック

次の項目を選択(有効)にして、「確認」をクリック

  • 発信元 IP アドレス
  • エラーコード

表示されているイベント履歴の中から

  • 発信元 IP アドレス:cloudformation.amazonaws.com

で「エラーコード」が記録されているものを探します。

必要に応じて、検索期間の指定もご活用ください。

参考資料