限制 Amazon KMS 请求 - Amazon Key Management Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

限制 Amazon KMS 请求

为了确保 Amazon KMS 可以对来自所有客户的 API 请求提供快速可靠的响应,它会限制超出特定边界的 API 请求。

当 Amazon KMS 拒绝其他有限请求并返回类似以下内容的 ThrottlingException 错误时,会进行限制

You have exceeded the rate at which you may call KMS. Reduce the frequency of your calls. (Service: AWSKMS; Status Code: 400; Error Code: ThrottlingException; Request ID: <ID>

Amazon KMS 限制满足以下条件的请求。

  • 每秒请求的速率超过一个账户和区域的 Amazon KMS 请求配额

    例如,如果您账户中的用户在一秒钟提交了 1000 个 DescribeKey 请求,Amazon KMS 会限制这一秒钟的所有后续 DescribeKey 请求。

    要对限制进行响应,请使用退避和重试策略。在某些 Amazon 开发工具包中,会针对 HTTP 400 错误自动实施这一策略。

  • 用于更改同一 KMS 密钥状态的请求突发或持续高速率。这种情况通常称为“热键”。

    例如,如果您账户中的某个应用程序针对同一个 KMS 密钥发送一串持久的 EnableKeyDisableKey 请求,Amazon KMS 将限制请求。即使请求没有超出 EnableKeyDisableKey 操作的每秒请求数请求限制,也会进行此限制。

    要响应限制,请调整您的应用程序逻辑,使其只发出必需的请求或合并多个函数的请求。

要查看请求速率的趋势,请使用 Service Quotas 控制台。您也可以创建 Amazon CloudWatch 告警,当您的请求速率达到配额值的特定百分比时向您发出提示。有关详细信息,请参阅 Amazon 安全博客使用 Service Quotas 和 Amazon CloudWatch 管理您的 Amazon KMS API 请求速度