

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

# 监视器 AWS KMS keys
<a name="monitoring-overview"></a>

监控是了解您的 AWS KMS keys 解决方案的可用性、状态和使用情况， AWS KMS 以及维护 AWS 解决方案的可靠性、可用性和性能的重要组成部分。从 AWS 解决方案的各个部分收集监控数据将有助于调试出现的多点故障。不过，在开始监控 KMS 密钥之前，应制定一个监控计划并在计划中回答下列问题：
+ 监控目的是什么？
+ 您将监控哪些资源？
+ 监控这些资源的频率如何？
+ 您将使用哪些[监控工具](#monitoring-tools)？
+ 谁负责执行监控任务？
+ 出现情况时应通知谁？

下一步是监控 KMS 密钥在一段时间内的情况，以便为环境中正常的 AWS KMS 使用情况和预期建立基准。监控 KMS 密钥时，存储历史监控数据，以便将此数据与当前数据进行比较，从而确定正常模式和异常情况，并找出解决问题的方法。

例如，您可以监控 AWS KMS API 活动和影响您的 KMS 密钥的事件。当数据高于或低于既定标准时，您可能需要进行调查或采取纠正措施。

要建立正常模式的基准，应监控以下各项：
+ AWS KMS *数据平面*操作的 API 活动。这些是使用 KMS 密钥的[加密操作](kms-cryptography.md#cryptographic-operations)，例如[解密](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)、[[ReEncrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_ReEncrypt.html)加密和](https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html)。[GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)
+ AWS KMS 用于*控制平面*操作的 API 活动，这些操作对您很重要。这些操作管理 KMS 密钥，您可能需要监控那些更改 KMS 密钥可用性的操作（例如[ScheduleKeyDeletion](https://docs.aws.amazon.com/kms/latest/APIReference/API_ScheduleKeyDeletion.html)、、[CancelKeyDeletion](https://docs.aws.amazon.com/kms/latest/APIReference/API_CancelKeyDeletion.html)、[DisableKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DisableKey.html)、[EnableKey[ImportKeyMaterial](https://docs.aws.amazon.com/kms/latest/APIReference/API_ImportKeyMaterial.html)](https://docs.aws.amazon.com/kms/latest/APIReference/API_EnableKey.html)、和 [DeleteImportedKeyMaterial](https://docs.aws.amazon.com/kms/latest/APIReference/API_DeleteImportedKeyMaterial.html)）或更改 KMS 密钥的访问控制（例如[PutKeyPolicy](https://docs.aws.amazon.com/kms/latest/APIReference/API_PutKeyPolicy.html)和 [RevokeGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_RevokeGrant.html)）。
+ 其他 AWS KMS 指标（例如[导入的密钥材料](importing-keys.md)到期之前的剩余时间）和事件（例如导入的密钥材料的到期或 KMS 密钥的删除或密钥轮换）。

## 监控工具
<a name="monitoring-tools"></a>

AWS 提供了可用于监控 KMS 密钥的各种工具。您可以配置其中的一些工具来为您执行监控任务，但有些工具需要手动干预。建议您尽可能实现监控任务自动化。

### 自动监控工具
<a name="monitoring-tools-automated"></a>

您可以使用以下自动化监控工具来监控 KMS 密钥并在发生更改时进行报告。
+ **AWS CloudTrail 日志监控**-在账户之间共享日志文件，通过将 CloudTrail 日志文件发送到 “ CloudWatch 日志” 来实时监控日志文件，使用处理[库编写日志CloudTrail 处理](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/use-the-cloudtrail-processing-library.html)应用程序，并验证您的日志文件在传送后是否未更改 CloudTrail。有关更多信息，[请参阅*AWS CloudTrail 用户指南*中的使用 CloudTrail 日志文件](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-working-with-log-files.html)。
+ **A CloudWatch mazon** Alarms — 在您指定的时间段内观察单个指标，并根据该指标在多个时间段内相对于给定阈值的值执行一项或多项操作。该操作是发送到亚马逊简单通知服务 (Amazon SNS) Simple Notification Scaling 主题或亚马逊 A EC2 uto Scaling 政策的通知。 CloudWatch 警报不会仅仅因为它们处于特定状态就调用操作；该状态必须已更改并保持了指定的时间段。有关更多信息，请参阅 [使用 Amazon 监控 KMS 密钥 CloudWatch](monitoring-cloudwatch.md)。
+ **Amazon EventBridge** — 匹配事件并将其路由到一个或多个目标函数或流，以捕获状态信息，并在必要时进行更改或采取纠正措施。有关更多信息，请参阅[使用 Amazon 监控 KMS 密钥 EventBridge](kms-events.md)和 [Amazon EventBridge 用户指南](https://docs.aws.amazon.com/eventbridge/latest/userguide/)。
+ **Amazon CloudWatch Logs** — 监控、存储和访问来自 AWS CloudTrail 或其他来源的日志文件。有关更多信息，请参阅 [Amazon CloudWatch 日志用户指南](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/)。

### 手动监控工具
<a name="monitoring-tools-manual"></a>

监控 KMS 密钥的另一个重要部分是手动监控 CloudWatch 警报和事件未涵盖的项目。 AWS KMS、 CloudWatch AWS Trusted Advisor、和其他 AWS 仪表板提供了 AWS 环境状态的 at-a-glance视图。

您可以[自定义](viewing-console-customize.md#console-customize-tables) [AWS KMS 控制台](https://console.aws.amazon.com/kms)的 **AWS 托管式密钥**和**客户自主管理型密钥**页面，从而显示有关每个 KMS 密钥的以下信息：
+ 密钥 ID
+ Status
+ 创建日期
+ 到期日期（对于具有[导入密钥材料](importing-keys.md)的 KMS 密钥）
+ Origin
+ 自定义密钥存储 ID（对于[自定义密钥存储](key-store-overview.md#custom-key-store-overview)中的 KMS 密钥）

[CloudWatch 控制台控制面板](https://console.aws.amazon.com/cloudwatch/home)显示以下信息：
+ 当前告警和状态
+ 告警和资源图表
+ 服务运行状况

此外，您还可以使用 CloudWatch 执行以下操作：
+ 创建[自定义控制面板](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/CloudWatch_Dashboards.html)以监控您关心的服务
+ 绘制指标数据图，以排除问题并弄清楚趋势
+ 搜索和浏览您的所有 AWS 资源指标
+ 创建和编辑告警以接收问题通知

AWS Trusted Advisor 可以帮助您监控 AWS 资源以提高性能、可靠性、安全性和成本效益。所有用户都可以使用四张 Trusted Advisor 支票；50多张支票可供拥有商业或企业支持计划的用户使用。有关更多信息，请参阅 [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/trustedadvisor/)。