创建检测待删除 KMS 密钥的使用的警报 - Amazon Key Management Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

创建检测待删除 KMS 密钥的使用的警报

可将 Amazon CloudTrail、Amazon CloudWatch Logs 和 Amazon Simple Notification Service (Amazon SNS) 的功能结合使用,以创建在您账户中的某个人员尝试使用等待删除的 KMS 密钥时向您发送通知的 Amazon CloudWatch 警报。如果您收到此通知,则可能要取消删除该 KMS 密钥并重新考虑删除它的决定。

以下过程创建在 "Key ARN is pending deletion" 错误消息写入 CloudTrail 日志文件时向您发送通知的警报。此错误消息指示有人或应用程序尝试在加密操作中使用该 KMS 密钥。由于通知链接至错误消息,因此,当您使用待删除的 KMS 密钥中允许的 API 操作时(例如 ListKeysCancelKeyDeletionPutKeyPolicy),不会触发该通知。要查看返回此错误消息的 Amazon KMS API 操作的列表,请参阅Amazon KMS 密钥的密钥状态

您收到的通知电子邮件不会列出 KMS 密钥或加密操作。可在 CloudTrail 日志中找到此信息。电子邮件会报告警报状态已从 OK (正常) 变为 Alarm (警报)。有关 CloudWatch 警报和状态更改的更多信息,请参阅 Amazon CloudWatch 用户指南 中的使用 Amazon CloudWatch 警报

警告

此 Amazon CloudWatch 告警无法检测到 Amazon KMS 外部非对称 KMS 密钥的公有密钥的使用情况。有关删除用于公有密钥加密的非对称 KMS 密钥的特殊风险的详细信息,包括创建无法解密的密文,请参阅 删除非对称 KMS 密钥

CloudWatch 告警的要求

在创建 CloudWatch 告警之前,必须先创建一个 Amazon CloudTrail 跟踪并配置 CloudTrail,以使其将 CloudTrail 日志文件传输至 Amazon CloudWatch Logs。您还需要针对警报通知使用 Amazon SNS 主题。

  • 创建 CloudTrail 跟踪

    在您创建账户时,将在您的 Amazon Web Services 账户 上自动启用 CloudTrail。但是,要持续记录账户中的事件(包括 Amazon KMS 的事件),请创建跟踪。

  • 配置 CloudTrail 日志文件以交付您的日志文件 CloudWatch Logs

    配置 CloudTrail 日志文件至 CloudWatch Logs 的交付。这样,CloudWatch Logs 便可以监控尝试使用待删除 KMS 密钥的 Amazon KMS API 请求的日志。

  • 创建 Amazon SNS 主题。

    当您的警报触发时,它会通过向 Amazon Simple Notification Service (Amazon SNS) 主题中的电子邮件地址发送电子邮件来通知您。

创建 CloudWatch 告警

在此过程中,您将创建 CloudWatch 日志组指标筛选条件 ,用于查找待删除异常的实例。然后,您根据日志组指标创建 ClouDWatch 警报。有关日志组指标筛选条件更多信息,请参阅《Amazon CloudWatch Logs 用户指南》中的使用筛选条件从日志事件创建指标

  1. 创建一个解析 CloudTrail 日志的 CloudWatch 指标筛选条件。

    使用以下必填值,按照为日志组创建指标筛选条件中的说明进行操作。对于其他字段,请接受默认值并按要求提供名称。

    字段
    筛选条件模式

    { $.eventSource = kms* && $.errorMessage = "* is pending deletion."}

    指标值 1
  2. 根据您在步骤 1 中创建的指标筛选条件创建 CloudWatch 警报。

    使用以下必填值,按照基于日志组指标筛选条件创建 CloudWatch 警报中的说明进行操作。对于其他字段,请接受默认值并按要求提供名称。

    字段
    指标筛选条件

    您在步骤 1 中创建的指标筛选条件名称。

    阈值类型 静态
    条件 metric-name 大于 1
    待报警的数据点 1 / 1
    缺失数据处理 将缺失的数据作为好处理 (未超出阈值)

完成此过程后,每当新的 CloudWatch 警报进入 ALARM 状态时,您都会收到通知。如果您收到此警报的通知,可能意味着仍然需要计划删除的 KMS 密钥来加密或解密数据。在这种情况下,请取消删除 KMS 密钥并重新考虑删除它的决定。