Amazon web services AWS CloudFormation仅将SNS限制为特定SQS队列

Amazon web services AWS CloudFormation仅将SNS限制为特定SQS队列,amazon-web-services,amazon-cloudformation,amazon-sqs,amazon-sns,Amazon Web Services,Amazon Cloudformation,Amazon Sqs,Amazon Sns,我正在修改AWS CloudFormation模板,以确保SNS主题A是唯一可以发布到SQS队列1和SQS队列2的主题。 这就是我所拥有的: SomeOtherQueue: Type: AWS::SQS::Queue InboundQueue: Type: AWS::SQS::Queue InboundCopyQueue: Type: AWS::SQS::Queue InboundTopic: Type: AWS::SNS::Topic Properties:

我正在修改AWS CloudFormation模板,以确保SNS主题A是唯一可以发布到SQS队列1SQS队列2的主题。 这就是我所拥有的:

SomeOtherQueue:
    Type: AWS::SQS::Queue
InboundQueue:
    Type: AWS::SQS::Queue
InboundCopyQueue:
    Type: AWS::SQS::Queue

InboundTopic:
  Type: AWS::SNS::Topic
  Properties:
    Subscription:
    - Endpoint:
        Fn::GetAtt:
        - InboundQueue
        - Arn
       Protocol: sqs

InboundQueuePolicy:
  Type: AWS::SQS::QueuePolicy
  Properties:
    PolicyDocument:
      Version: '2012-10-17'
      Id: InboundQueuePolicy
      Statement:
      - Sid: Allow-SendMessage-To-Inbound-Queue-Only
        Effect: Allow
        Principal:
          Service:
            - sns.amazonaws.com
        Action:
          - sqs:SendMessage
        Resource: "*"
    Queues:
      - Ref: InboundQueue
      - Ref: InboundCopyQueue
上面定义了一组队列、一个订阅了一些相关队列的主题以及一个队列策略,该策略旨在限制哪个主题可以发布到引用的队列

我想了解的是如何确保InboundQueuePolicy仅适用于InboundTopic。我似乎找不到引用InboundTopic作为InboundQueuePolicy资源的正确语法

如能获得正确语法方面的任何帮助,将不胜感激


谢谢

我相信您可以在您的策略中添加一个使用
aws:SourceArn
键的条件

谢谢你,杰森,我还没有调查过。将尝试并恢复。