IamRoleSNSPublishSQS:
Type: AWS::SQS::QueuePolicy
Properties:
PolicyDocument:
Version: "2012-10-17"
Statement:
- Sid: Allow-SNS-Messages
Effect: Allow
Principal:
AWS: '*'
Action:
- "SQS:*"
Resource: {"Ref": "IncomingEmailSnsTopic"}
Condition:
ArnEquals:
aws:SourceArn: !Ref 'IncomingEmailSnsTopic'
Queues:
- {"Ref": "MyQueue"}
这就是我所拥有的策略(它不会更新Cloudformation堆栈)。
当我拥有该消息时,该消息将无法发布到队列中。
如果我随后更新权限:
并选中此框:
然后,当消息发布时,它确实进入队列。队列策略有什么问题?
答案 0 :(得分:1)
在您的队列策略中,“资源”字段当前指向SNS主题的ARN。
“资源”字段应指向该策略适用的资源。换句话说,队列的ARN(另一种选择是只使用通配符)。