tha*_*lay 7 amazon-web-services amazon-sns aws-cloudformation amazon-cloudwatch
我想使用 CloudWatch 监控某些参数(TotalErrorRate 和延迟),并且当引发 (cloudWatch) 警报时,我想要一个“简单通知服务”(SNS) 向我发送电子邮件:
EscalationTopic:
Type: "AWS::SNS::Topic"
Properties:
DisplayName: My Monitoring
Subscription:
- Endpoint: !Ref EmailForNotification
Protocol: email
EscalationTopicEmailSubscriber:
Type: "AWS::SNS::Subscription"
Properties:
Endpoint: !Ref EmailForNotification
Protocol: email
TopicArn: !Ref EscalationTopic
Run Code Online (Sandbox Code Playgroud)
但我收到此错误:(
User is not authorized to perform: SNS:CreateTopic on resource(Service: AmazonSNS; Status Code: 403; Error Code: AuthorizationError
参见屏幕截图)
我为解决这个问题所做的就是创建一个 topicPolicy:
SNSTopicPolicy:
Type: 'AWS::SNS::TopicPolicy'
Properties:
Topics:
- !Ref EscalationTopic
PolicyDocument:
Version: '2012-10-17'
Statement:
- Effect: Allow
Action: 'sns:CreateTopic'
Resource: !Ref EscalationTopic
Principal:
AWS: '*'
Run Code Online (Sandbox Code Playgroud)
但问题仍然存在。
编辑:在 SNS 控制台中,我可以手动创建一个新主题。这不是应该意味着我获得了createTopic的权限吗?
错误消息非常准确地说明了问题。用于创建 CloudFormation 堆栈的凭证(可能是您的登录凭证,除非您在堆栈创建期间指定了角色)无权创建 Amazon SNS 主题。
您应该查看与您的 IAM 用户关联的权限并添加必要的权限。
添加 SNS 主题策略不会产生任何影响,因为它用于向 SNS 授予一组权限,而您需要权限来创建主题本身。
归档时间: |
|
查看次数: |
12865 次 |
最近记录: |