

# 事件驱动型响应
<a name="event-driven-response"></a>

 使用*事件驱动型响应*系统，检测性机制会触发一个响应机制，以自动修复事件。您可以使用由事件驱动的响应能力，以缩短检测机制与响应机制之间的价值实现时间。要创建这个由事件驱动的架构，您可以使用 AWS Lambda，这是一项无服务器计算服务，可运行您的代码以响应事件并为您自动管理底层计算资源。 

 例如，假设您有一个 AWS 账户并为其启用了 AWS CloudTrail 服务。如果 AWS CloudTrail 曾经禁用过（通过 `cloudtrail:StopLogging` API），则响应程序是再次启用该服务，并调查禁用 AWS CloudTrail 日志记录的用户。您可以通过编程方式（通过 `cloudtrail:StartLogging` API）再次启用日志记录，而不是在 AWS 管理控制台 中手动执行这些步骤。如果您使用代码实现此功能，则您的响应目标是尽快执行此任务，并通知响应者已执行响应。

 您可以将逻辑分解为简单的代码，以便在 AWS Lambda 函数中运行来执行这些任务。然后，您可以使用 Amazon CloudWatch Events 监控特定 `cloudtrail:StopLogging` 事件，并在事件发生时调用该函数。当 Amazon CloudWatch Events 调用此 AWS Lambda 响应程序函数时，您可以向其传递特定事件的详细信息，包括禁用 AWS CloudTrail 的主体的信息、禁用时间、受影响的特定资源以及其他相关信息。您可以使用此信息来丰富日志中的发现结果，然后生成仅包含响应分析师所需的特定值的通知或警报。

 理想情况下，事件驱动型响应的目标是让 Lambda 响应程序函数执行响应任务，然后使用任何相关的上下文信息通知响应者已成功处理异常。然后，由人工响应者决定如何确定其发生原因以及如何防止将来再次发生。此反馈循环可进一步提高云环境的安全性。要实现这一目标，您必须营造一种文化，使您的安全团队能够与开发和运营团队更紧密地合作。 