

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用 Amazon 处理 Macie 的调查结果 EventBridge
<a name="findings-monitor-events-eventbridge"></a>

亚马逊 EventBridge（前身为 Amazon CloudWatch Events）是一项无服务器事件总线服务。 EventBridge 提供来自应用程序和服务的实时数据流，并将这些数据路由到 AWS Lambda 函数、亚马逊简单通知服务 (Amazon SNS) Service 主题和 Amazon Kinesis 流等目标。要了解更多信息EventBridge，请参阅 [Amazon EventBridge 用户指南](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html)。

借 EventBridge助，您可以自动监控和处理某些类型的事件。这包括 Amazon Macie 针对新策略调查发现和敏感数据调查发现自动发布的事件。这还包括 Macie 针对后续出现的现有策略调查发现自动发布的事件。有关 Macie 如何以及何时发布这些事件的详细信息，请参阅[为调查发现配置发布设置](findings-publish-frequency.md)。

通过使用 EventBridge 和 Macie 为调查结果发布的事件，您可以近乎实时地监控和处理调查结果。然后，您可以通过使用其他应用程序和服务根据调查发现采取行动。例如，您可以使用 EventBridge 向 AWS Lambda 函数发送特定类型的新发现。然后 Lambda 函数可能会处理该数据并将其发送到您的安全事故和事件管理 (SIEM) 系统。如果您[AWS 用户通知服务 与 Macie 集成](findings-monitor-events-uno.md)，还可以使用事件通过您指定的交付渠道自动收到有关发现的通知。

除了自动监控和处理外，使用 EventBridge 还可以长期保留您的发现数据。Macie 会将调查发现存储 90 天。使用 EventBridge，您可以将调查结果数据发送到首选存储平台，并根据需要将数据存储多长时间。

**注意**  
若要长期留存，还可以配置 Macie 以将您的敏感数据发现结果存储在 S3 存储桶中。*敏感数据发现结果*是记录 Macie 对 S3 对象执行的分析的详细信息的记录，以确定该对象是否包含敏感数据。要了解更多信息，请参阅[存储和保留敏感数据发现结果](discovery-results-repository-s3.md)。

**Topics**
+ [使用 EventBridge](#findings-monitor-events-eventbridge-overview)
+ [为调查结果创建 EventBridge 规则](#findings-monitor-events-eventbridge-rule-cli)

## 与亚马逊合作 EventBridge
<a name="findings-monitor-events-eventbridge-overview"></a>

通过 Amazon EventBridge，您可以创建规则来指定要监控的事件以及要对这些事件执行自动操作的目标。*目标*是向其 EventBridge 发送事件的目的地。

要自动监控和处理发现任务，您可以创建一条 EventBridge 规则，自动检测 Amazon Macie 的发现事件，并将这些事件发送到其他应用程序或服务进行处理或其他操作。您可以调整规则，使其仅发送那些符合特定条件的事件。为此，请指定源自[Macie 调查结果的亚马逊 EventBridge 事件架构](findings-publish-event-schemas.md)的标准。

例如，您可以创建一个规则，将特定类型的新调查发现发送到 AWS Lambda 函数。然后，Lambda 函数可以执行诸如下列各项的任务：处理数据并将其发送到您的 SIEM 系统；自动对 S3 对象应用某种类型的服务器端加密；或者通过更改 S3 对象的访问控制列表（ACL）来限制对该对象的访问。或者，您可以创建一条规则，自动向 Amazon SNS 主题发送新的高严重性调查发现，然后将调查发现通知您的事件响应团队。

除了调用 Lambda 函数和通知 Amazon SNS EventBridge 主题外，还支持其他类型的目标和操作，例如将事件中继到 Amazon Kinesis AWS Step Functions 流、激活状态机和调用运行命令。 AWS Systems Manager 有关支持的目标的信息，请参阅 *Amazon EventBridge 用户指南*中的[事件总线目标](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-targets.html)。

## 为 Macie 调查结果创建亚马逊 EventBridge 规则
<a name="findings-monitor-events-eventbridge-rule-cli"></a>

以下过程说明了如何使用亚马逊 EventBridge 控制台和 [AWS Command Line Interface (AWS CLI)](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) 为 Amazon Macie 的调查结果创建 EventBridge 规则。该规则检测使用 EventBridge事件架构和模式获取 Macie 发现的事件，并将这些事件发送到 AWS Lambda 函数进行处理。

AWS Lambda 是一项计算服务，无需预置或管理服务器即可使用它来运行代码。您可以打包您的代码并将其 AWS Lambda 作为 *Lambda 函数*上传到。 AWS Lambda 然后在函数被调用时运行该函数。您可以手动调用函数，自动调用函数以响应事件，或者响应来自应用程序或服务的请求。有关创建和调用 Lambda 函数的信息，请参阅[《AWS Lambda 开发人员指南》](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html)。

------
#### [ Console ]

按照以下步骤使用亚马逊 EventBridge 控制台创建规则，自动将所有 Macie 查找事件发送到 Lambda 函数进行处理。该规则对收到特定事件时运行的规则使用默认设置。有关规则设置的详细信息或要了解如何创建使用自定义设置的[规则，请参阅 *Amazon EventBridge 用户指南*中的创建对事件做出反应](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule.html)的规则。

**提示**  
您还可以创建一个规则，使用自定义模式仅检测 Macie 调查发现事件的子集并对其采取行动。该子集可以基于 Macie 在调查发现事件中包含的特定字段。要了解可用字段，请参阅[Macie 调查结果的亚马逊 EventBridge 事件架构](findings-publish-event-schemas.md)。要了解如何在规则中使用自定义模式，请参阅 *Amazon EventBridge 用户指南*中的[创建事件模式](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-pattern.html)。

在创建规则之前，请创建您希望该规则用作目标的 Lambda 函数。创建规则时，需要将此函数指定为规则的目标。

**通过使用控制台创建事件规则**

1. 打开 Amazon EventBridge 控制台，网址为[https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/)。

1. 在导航窗格中的**总线**下，选择**规则**。

1. 在**规则**部分中，选择**创建规则**。

1. 在**定义规则详细信息**页面上，执行以下操作：
   + 对于**名称**，输入规则的名称。
   + （可选）对于**描述**，输入规则的简要描述。
   + 对于**事件总线**，请确保选择**默认值**，以及**在选定的事件总线上启用该规则**已开启。
   + 对于**规则类型**，选择**具有事件模式的规则**。

1. 完成后，选择 **Next (下一步)**。

1. 在**构建事件模式**页面上，执行以下操作：
   + 对于**事件来源**，选择**AWS 事件或 EventBridge 合作伙伴事件**。
   + （可选）对于**示例事件**，请查看 Macie 的示例调查发现事件，以了解事件可能包含的内容。为此，请选择 **AWS 事件**。然后，对于**示例事件**，选择 **Macie 调查发现**。
   + 对于**创建方法**，选择**使用模式表单**。
   + 对于**事件模式**，输入以下设置：
     + 对于**事件源**，选择 **AWS 服务**。
     + 对于 **AWS 服务**，选择 **Macie**。
     + 对于 **事件类型**，选择 **Macie 调查发现**。

1. 完成后，选择 **Next (下一步)**。

1. 在**选择目标**页面上，执行以下操作：
   + 对于 **Target types**（目标类型），选择 **AWS 服务**。
   + 对于 **Select a target**（选择目标），选择 **Lambda function**（Lambda 函数）。然后，对于**函数**，选择您要将调查发现发送到的 Lambda 函数。
   + 对于**配置版本/别名**，输入目标 Lambda 函数的版本和别名设置。
   + （可选）对于**其他设置**，输入自定义设置以指定要向 Lambda 函数发送哪些事件数据。您还可以指定如何处理未成功传递到函数的事件。

1. 完成后，选择 **Next (下一步)**。

1. 在**配置标签**页面上，可以选择输入要分配给规则的一个或多个标签。然后选择**下一步**。

1. 在**查看并创建**页面上，查看规则的设置并验证它们是否正确。

   要更改设置，选择包含该设置的部分中的**编辑**，然后输入正确的设置。您也可以使用导航选项卡转到包含设置的页面。

1. 在输入完验证设置后，请选择**创建规则**。

------
#### [ AWS CLI ]

按照以下步骤使用创建 EventBridge 规则， AWS CLI 将所有 Macie 查找事件发送到 Lambda 函数进行处理。该规则对收到特定事件时运行的规则使用默认设置。在该过程中，这些命令是针对 Microsoft Windows 进行格式化的。对于 Linux、macOS 或 Unix，请将插入符号 (^) 行继续符替换为反斜杠 (\$1)。

在创建规则之前，请创建您希望该规则用作目标的 Lambda 函数。创建函数时，请记下函数的 Amazon 资源名称（ARN）。为规则指定目标时，需要输入此 ARN。

**要创建事件规则，请使用 AWS CLI**

1. 创建一条规则，用于检测 Macie 发布到 EventBridge的所有发现的事件。为此，请运行 EventBridge [put-rule](https://docs.aws.amazon.com/cli/latest/reference/events/put-rule.html) 命令。例如：

   ```
   C:\> aws events put-rule ^
   --name MacieFindings ^
   --event-pattern "{\"source\":[\"aws.macie\"]}"
   ```

   您想要*MacieFindings*的规则名称在哪里。
**提示**  
您还可以创建一个规则，使用自定义模式 (`event-pattern`) 仅检测 Macie 调查发现事件的子集并对其采取行动。该子集可以基于 Macie 在调查发现事件中包含的特定字段。要了解可用字段，请参阅[Macie 调查结果的亚马逊 EventBridge 事件架构](findings-publish-event-schemas.md)。要了解如何在规则中使用自定义模式，请参阅 *Amazon EventBridge 用户指南*中的[创建事件模式](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-pattern.html)。

   如果命令成功运行，则使用 EventBridge 规则的 ARN 进行响应。记下此 ARN。您需要在步骤 3 中输入该 ARN。

1. 指定要用作规则目标的 Lambda 函数。为此，请运行 EventBridge [put-targets 命令。](https://docs.aws.amazon.com/cli/latest/reference/events/put-targets.html)例如：

   ```
   C:\> aws events put-targets ^
   --rule MacieFindings ^
   --targets Id=1,Arn=arn:aws:lambda:regionalEndpoint:accountID:function:my-findings-function
   ```

   其中*MacieFindings*是您在步骤 1 中为规则指定的名称，`Arn`参数的值是您希望规则用作目标的函数的 ARN。

1. 添加允许规则调用目标 Lambda 函数的权限。为此，请运行 Lambda [add-permission](https://docs.aws.amazon.com/cli/latest/reference/lambda/add-permission.html) 命令。例如：

   ```
   C:\> aws lambda add-permission ^
   --function-name my-findings-function ^
   --statement-id Sid ^
   --action lambda:InvokeFunction ^
   --principal events.amazonaws.com ^
   --source-arn arn:aws:events:regionalEndpoint:accountId:rule:MacieFindings
   ```

   其中：
   + *my-findings-function*是您希望规则用作目标的 Lambda 函数的名称。
   + *Sid*是您定义的语句标识符，用于描述 Lambda 函数策略中的语句。
   + `source-arn`是规则的 ARN。 EventBridge

   如果命令成功运行，则您将收到类似于以下内容的输出：

   ```
   {
     "Statement": "{\"Sid\":\"sid\",
       \"Effect\":\"Allow\",
       \"Principal\":{\"Service\":\"events.amazonaws.com\"},
       \"Action\":\"lambda:InvokeFunction\",
       \"Resource\":\"arn:aws:lambda:us-east-1:111122223333:function:my-findings-function\",
       \"Condition\":
         {\"ArnLike\":
           {\"AWS:SourceArn\":
            \"arn:aws:events:us-east-1:111122223333:rule/MacieFindings\"}}}"
   }
   ```

   `Statement` 值是已添加到 Lambda 函数策略的语句的 JSON 字符串版本。

------