如何解决无法收到来自 EventBridge 的 AWS Backup 通知的问题?

2 分钟阅读
0

我设置了 Amazon EventBridge 规则来发送 AWS Backup 的通知,但我没有收到任何通知。

简短描述

要解决未收到来自 Amazon EventBridge 的 Amazon Simple Notification Service(Amazon SNS)通知的问题,请验证以下配置:

  • EventBridge 规则中的事件模式和目标配置正确。
  • 已激活 EventBridge 规则。
  • Amazon SNS 访问策略包括 events.amazonaws.com
  • 已确认 Amazon SNS 订阅。
  • AWS Key Management Service(AWS KMS)密钥策略包括 sns.amazonaws.comevents.amazonaws.com

解决方法

验证 EventBridge 规则中的事件模式和目标配置是否正确

要验证 EventBridge 规则中事件模式和目标的配置,请完成以下步骤:

1.    打开 Amazon EventBridge 控制台

2.    在导航窗格中,选择规则

3.    在名称中,选择您的规则。

4.    对于事件模式,验证 JSON 对象是否配置了正确的状态。以下是接收有关失败的 AWS Backup 任务状态的通知的模式示例:

{  
  "source": ["aws.backup"],  
  "detail-type": ["Backup Job State Change"],  
 "detail": {  
    "state": ["FAILED"]  
  }  
}

5.    对于目标,请验证是否在 EventBridge 规则上设置了预期的目标名称。如果您使用的是 Amazon SNS,请确认分配了正确的 SNS 主题。

**注意:**规则的目标必须与规则位于同一 AWS 区域。

验证 EventBridge 规则是否已激活

要验证 EventBridge 规则的状态,请完成以下步骤:

  1. 打开 Amazon EventBridge 控制台
  2. 在导航窗格中,选择规则
  3. 选择要更新的规则名称。
  4. 验证您的规则是否处于已启用状态。

验证 SNS 主题访问策略的权限

要验证 SNS 主题访问策略是否允许 events.amazonaws.com,请完成以下步骤:

1.    打开 Amazon SNS 控制台

2.    在导航窗格中,选择主题

3.    在名称中,选择您的 Amazon SNS 主题。

4.    对于详细信息,请选择访问策略选项卡。

5.    验证 AWS Identity and Access Management(IAM)访问策略是否具有向 events.amazonaws.com 发布的权限。以下是允许 events.amazonaws.com 的示例语句:

{  
 "Statement": [{  
    "Sid": "Statement1",  
    "Effect": "Allow",  
    "Principal": {  
      "Service": "events.amazonaws.com"  
    },  
    "Action": "sns:Publish",  
    "Resource": "arn:aws:sns:[region]:[account id]:[topic name]"  
  }]  
}

验证 Amazon SNS 订阅

要验证 Amazon SNS 订阅,请完成以下步骤:

  1. 打开 Amazon SNS 控制台
  2. 在导航窗格中,选择订阅
  3. 对于您的 Amazon SNS 订阅 ID,请验证状态是否为已确认
  4. 如果状态为等待确认,则按照说明确认订阅

验证 AWS KMS 权限

要验证 AWS KMS 权限,请完成以下步骤:

1.    打开 AWS KMS 控制台

2.    在导航窗格中,选择客户自主管理型密钥

3.    选中要查看的 KMS 密钥对应的复选框。然后,验证 KMS 密钥是否已启用。要启用 KMS 密钥,请选择密钥操作,启用

4.    对于密钥 ID,选择您的 AWS KMS 密钥。

5.    对于密钥策略,选择切换到策略视图

6.    验证 KMS 密钥策略是否允许向 events.amazonaws.com 发布的权限。以下是允许 events.amazonaws.com 的示例语句:

{
  "Sid": "Allow access for Key User (SNS Service Principal)",
  "Effect": "Allow",
  "Principal": {
    "Service": [
      "sns.amazonaws.com",
      "events.amazonaws.com"
    ]
  },
  "Action": [
    "kms:GenerateDataKey*",
    "kms:Decrypt"
  ],
  "Resource": "*"
}

相关信息

使用 EventBridge 监控 AWS Backup

Amazon EventBridge 事件模式

订阅 Amazon SNS 主题

使用 AWS KMS 加密发布到 Amazon SNS 的消息

AWS 官方
AWS 官方已更新 1 年前