AWS CloudFormation Ограничение SNS для указания c SQS Queues только - PullRequest
0 голосов
/ 04 февраля 2020

Я изменяю шаблон AWS CloudFormation с целью обеспечения того, чтобы SNS Topi c A был единственным topi c, который может публиковать sh в очередь 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:
    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

Выше определено множество очередей, топи c с подпиской на некоторые соответствующие очереди и политика очередей, предназначенная для ограничения какой топи c могу опубликовать sh в ссылочных очередях.

Я пытаюсь понять, как go убедиться, что InboundQueuePolicy применяется к InboundTopi c только. Я не могу найти правильный синтаксис для ссылки InboundTopi c в качестве ресурса для InboundQueuePolicy .

Любая помощь в получении правильного синтаксиса будет принята с благодарностью.

Спасибо

1 Ответ

0 голосов
/ 07 февраля 2020

Полагаю, вы могли бы добавить в свою политику условие, использующее ключ aws:SourceArn. AWS Глобальные контекстные ключи условия - ARN источника

...