跳至内容

当 AWS Config 检测到新资源时,如何设置自定义电子邮件通知?

2 分钟阅读
0

我想在 AWS Config 发现新资源时使用 AWS Config 接收电子邮件通知。

解决方案

**注意:**在以下示例中,当您创建新的 Amazon Elastic Compute Cloud (Amazon EC2) 实例时,将会收到 Amazon Simple Notification Service (Amazon SNS) 通知。当您在 AWS Config 服务处于活动状态的 AWS 区域创建 EC2 实例时,将会收到通知。AWS Config 记录新的 EC2 实例,并使用资源类型 AWS::EC2::Instance 来识别这些实例。

创建 Amazon SNS 主题

在与 AWS Config 服务相同的区域创建 Amazon SNS 主题

创建 EventBridge 规则

  1. 打开 Amazon EventBridge 控制台

  2. 在导航窗格中,选择 Rules(规则),然后选择 Create rule(创建规则)。

  3. 输入以下信息:
    对于 Name(名称),输入规则的名称。
    (可选)对于 Description(描述),输入规则的描述。
    对于 Rule type(规则类型),选择 Rule with an event pattern(具有事件模式的规则)。

  4. 选择 Next(下一步)。

  5. 对于 Event source(事件来源),选择 AWS events or EventBridge partner events(AWS 事件或 EventBridge 合作伙伴事件)。

  6. Event pattern(事件模式)下,选择 Custom pattern (JSON editor)(自定义模式(JSON 编辑器))。

  7. 输入以下事件模式示例:

    {
      "source": [
        "aws.config"
      ],
      "detail-type": [
        "Config Configuration Item Change"
      ],
      "detail": {
        "messageType": [
          "ConfigurationItemChangeNotification"
        ],
        "configurationItem": {
          "resourceType": [
            "AWS::EC2::Instance"
          ],
          "configurationItemStatus": [
            "ResourceDiscovered"
          ]
        }
      }
    }

    **注意:**将 EC2::Instance 资源类型替换为您的资源类型。有关可用资源类型的列表,请参阅 ResourceIdentifier 中的 resourceType 部分。有关支持的资源类型的信息,请参阅 AWS Config 支持的资源类型

  8. 选择 Next(下一步)。

  9. 输入以下信息:
    对于 Target types(目标类型),选择 AWS service(AWS 服务)。
    对于 Select a target(选择目标),从下拉列表中选择 SNS topic(SNS 主题)。
    对于 Topic(主题),选择您的 SNS 主题。

  10. Additional settings(其他设置)下,对于 Configure target input(配置目标输入),选择 Input transformer(输入转换器)。

  11. 选择 Configure input transformer(配置输入转换器)。然后,在 Input path(输入路径)文本框的 Target input transformer(目标输入转换器)下,输入以下示例路径:

{
    "awsRegion": "$.detail.configurationItem.awsRegion",
    "awsAccountId": "$.detail.configurationItem.awsAccountId",
    "resource_type": "$.detail.configurationItem.resourceType",
    "resource_ID": "$.detail.configurationItem.resourceId",
    "configurationItemCaptureTime": "$.detail.configurationItem.configurationItemCaptureTime"
}
  1. Template(模板)文本框中,输入以下示例模板:
"On <configurationItemCaptureTime> AWS Config service recorded a creation of a new <resource_type> with Id <resource_ID> in the account <awsAccountId> region <awsRegion>. For more details open the AWS Config console at https://console.aws.amazon.com/config/home?region=<awsRegion>#/timeline/<resource_type>/<resource_ID>/configuration"
  1. 选择 Confirm(确认),然后选择 Next(下一步)。
  2. 选择 Create rule(创建规则)。

通知示例:

"On ExampleTime AWS Config service recorded a creation of a new AWS::EC2::Instance with Id ExampleID in the account AccountID region ExampleRegion. For more details open the AWS Config console at https://console.aws.amazon.com/config/home?region=*ExampleRegion*#/timeline/AWS::EC2::Instance/*ExampleID*/configuration"

相关信息

如何为 GuardDuty 配置 EventBridge 规则,以便发送针对特定服务查找类型的自定义 SNS 通知?

如何使用 AWS Config 在 AWS 账户中的资源被删除时接收自定义电子邮件通知?

AWS 官方已更新 9 个月前