CloudFormation在AWS::SQS::Queue与RedriveAllowPolicy属性结合使用时出现问题

0

【以下的问题经过翻译处理】 我们在CloudFormation中为AWS::SQS::Queue指定了RedriveAllowPolicy,并且再次在CloudFormation中收到错误,尽管我们没有对模板进行任何更改。

这种情况在几周前也发生过,所以这是我们看到的此属性的第二次变化。

因此,我们修改了我们的模板定义为:

TestQueue:
    Type: AWS::SQS::Queue
    Properties:
      VisibilityTimeout: 450
      RedriveAllowPolicy: '{"redrivePermission":"denyAll"}'
      RedrivePolicy:
        deadLetterTargetArn: !GetAtt TestDeadLetterQueue.Arn
        maxReceiveCount: 5

  TestDeadLetterQueue:
    Type: AWS::SQS::Queue
    Properties:
      MessageRetentionPeriod: 1209600

这个方法运行了几周,但现在 CloudFormation 在使用该模板时出现了以下错误:

2021-12-14 10:33:14 UTC+0100 TestQueue CREATE_FAILED

Properties validation failed for resource TestQueue with message: #: extraneous key [RedriveAllowPolicy] is not permitted

从模板中移除RedriveAllowPolicy: '{"redrivePermission":"denyAll"}'可以解决这个问题,但我们希望设置这个策略。

我希望我们准确地遵循 https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-redriverallowpolicy 中的文档。

重现错误的完整模板文件:

AWSTemplateFormatVersion: '2010-09-09'
Description: A prototype stack to test out CloudFormation definitions.
Metadata: {}
Transform: AWS::Serverless-2016-10-31

Resources:

  TestQueue:
    Type: AWS::SQS::Queue
    Properties:
      VisibilityTimeout: 450
      RedriveAllowPolicy: '{"redrivePermission":"denyAll"}'
      RedrivePolicy:
        deadLetterTargetArn: !GetAtt TestDeadLetterQueue.Arn
        maxReceiveCount: 5

  TestDeadLetterQueue:
    Type: AWS::SQS::Queue
    Properties:
      MessageRetentionPeriod: 1209600
1 Antwort
0

【以下的回答经过翻译处理】 我已将提供的示例模板部署到 eu-central-1(欧洲-法兰克福)区域,栈和资源已成功部署到我的账户中。我为资源 AWS::SQS::Queue 使用了 RedriveAllowPolicy: '{"redrivePermission": "denyAll"}' 属性。

也许您可以再试一次,确认一下您的行为。否则,我建议打开一个支持案例,以便工程师排除故障并验证问题。

profile picture
EXPERTE
beantwortet vor 5 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen