スキップしてコンテンツを表示

User is not authorized to perform: cloudformation:CreateChangeSet

0

Account ID: 515497299286 Exact Error: User is not authorized to perform: cloudformation:CreateChangeSet on resource: arn:aws:cloudformation:us-east-2:aws:transform/Serverless::2016-10-31

Evidence of Systematic Testing: Failed with multiple IAM users (SAMDeploy with AdministratorAccess) Failed with root user credentials Failed across multiple regions (us-east-2, us-west-2) Regular CloudFormation works fine as I ran simple test and it passed No Organization SCPs blocking access SAM Template validates correctly Ran simulate and users have permissions

Timeline: I was able to do this last week, but is failing this week

質問済み 2ヶ月前61ビュー
2回答
0
承認された回答

Based on the error message and your testing, this appears to be a permissions issue with the AWS Serverless Application Model (SAM) transformation. Even though you've verified that your users have the necessary CloudFormation permissions and you've tested with AdministratorAccess and even the root user, there seems to be an explicit deny somewhere that's preventing the CreateChangeSet operation specifically on the Serverless transform resource.

The error is specifically related to the Serverless transform (arn:aws:cloudformation:us-east-2:aws:transform/Serverless::2016-10-31) rather than a regular CloudFormation stack, which explains why your regular CloudFormation deployments work fine.

Since you mentioned this was working last week but is failing this week, and you've already verified that there are no Organization SCPs blocking access, there might have been a change in how permissions are evaluated for the Serverless transform, or there could be a temporary service issue.

Here are some troubleshooting steps to consider:

  1. Check for any explicit deny statements in your IAM policies that might be targeting CloudFormation transforms specifically.

  2. Ensure that your IAM policies include permissions not just for CloudFormation actions but also for the specific transform resource. You might need to add explicit permissions for the Serverless transform.

  3. Try adding the following to your IAM policy:

{
"Effect": "Allow",
"Action": "cloudformation:CreateChangeSet",
"Resource": "arn:aws:cloudformation:*:aws:transform/Serverless-*"
}
  1. If you're using AWS SAM CLI, ensure it's updated to the latest version, as there might have been changes in how it interacts with the CloudFormation service.

  2. Since you mentioned it was working last week, consider opening a support case with AWS if none of the above steps resolve the issue, as there might be a service-side change or issue.

Remember that in IAM, an explicit deny always takes precedence over an allow permission, so even with AdministratorAccess, if there's a specific deny for this resource, it will block the operation.
Sources
(AccessDenied) when calling the CreateChangeSet operation: | AWS re:Post
Step 3: Limit the CodeDeploy user's permissions - AWS CodeDeploy

回答済み 2ヶ月前
エキスパート
レビュー済み 2ヶ月前
0

In addition to administrator access on newly created user, I've already added a customer inline policy on that user defined as per below. I'm a solo user so no org or boundry stuff at all. { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloudformation:CreateChangeSet", "cloudformation:DescribeChangeSet", "cloudformation:ExecuteChangeSet" ], "Resource": [ "arn:aws:cloudformation:::stack/", "arn:aws:cloudformation::aws:transform/*" ] } ] }

回答済み 2ヶ月前
  • Oh yea, I also tried root user which as I understand bypasses all restrictions. Will open ticket. Thanks,

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

関連するコンテンツ