我只是尝试设置预算警报,而在尝试为警报指定SNS ARN时收到错误无效的SNS主题ARN 。
我按照以下步骤操作:
怎么了?我知道它是正确的ARN,因为我直接从控制台复制了它。而且,据我了解,尽管SNS主题是(该主题位于us-east-2 N. Virginia),但预算及其警报并不局限于特定区域。
如果需要更多详细信息,请告诉我。
答案 0 :(得分:2)
请确保您已允许budget.amazonaws.com能够在SNS主题的基于资源的策略中向该SNS主题发布消息。
在政策中添加以下声明
{
"Sid": "ExampleSid123456789012",
"Effect": "Allow",
"Principal": {
"Service": "budgets.amazonaws.com"
},
"Action": "SNS:Publish",
"Resource": "your topic ARN"
}
希望它能起作用!
答案 1 :(得分:1)
我之前遇到过同样的问题,但是可以通过以下步骤解决
“请遵守SNS ARN格式”
我的解决方法是
-
1。。在 US-EAST-1 地区
中创建一个 SNS主题。2。。刚使用的基本访问策略
3。。(可选)字段,我使用了以下选项:仅指定的AWS账户,粘贴了我的AWS账户ID
4。。通过在 中添加服务 budgets.amazonaws.com ,编辑SNS主题并启用访问策略。 > SNS:发布 操作 只需按照下面的格式复制格式,然后保存
5。 成功创建SNS主题后,我重新加载了配置 警报页面,然后粘贴了SNS主题ARN 。没有更多的错误,可以 已经确认预算,
您将收到一封确认电子邮件。
具有此内容
恭喜,您已成功验证AWS预算的SNS主题!您现在可以接收AWS预算通知 通过这个SNS主题。
答案 2 :(得分:1)
答案 3 :(得分:0)
我有同样的问题。这是我的经验。
但是后来我重新加载了页面,并尝试从头开始创建帐单提醒。
第二次成功!
答案 4 :(得分:0)
仅此一点,在执行了上述步骤之后,它仍然无法正常工作。我发现,如果您在SNS主题上启用了“加密”,则将无法使用。在主题上禁用此功能并刷新“预算”编辑屏幕即可解决此问题!
答案 5 :(得分:0)
您需要将策略添加到现有SNS访问策略的“声明”:[”下方。
{
"Sid": "AWSBudgets-notification-1",
"Effect": "Allow",
"Principal": {
"Service": "budgets.amazonaws.com"
},
"Action": "SNS:Publish",
"Resource": "SNS-policy-ARN"
},
确保最后不要错过逗号。 SNS-policy-ARN是同一SNS主题的ARN
答案 6 :(得分:0)
如果您在 .net 应用程序中运行此应用程序,并在 ~/.AWS/credentials 文件中使用您的 AWS 凭证,请确保您的 appsettings.json 中定义的区域与您的 SNS 主题所在的区域相匹配.
{
"AWS": {
"Profile": "myProfile",
"Region": "eu-west-2"
},
...