请求配额 - AWS Key Management Service

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

请求配额

AWS KMS 对每秒请求的 API 操作数量设置了配额。有关列出每个 API 操作的每秒请求配额的表,请参阅 每个 请求配额 API 操作的AWS KMS.

当您超出 API 时请求配额, 将AWS 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>

因 API 操作请求配额、区域和其他因素(如 AWS 类型CMK)而异。

注意

如果您需要超过配额,可以在 Service Quotas 中请求增加配额。使用 Service Quotas 控制台RequestServiceQuotaIncrease 操作。有关详细信息,请参阅 Service Quotas 用户指南 中的请求提高配额。如果适用于 AWS KMS 的 Service Quotas 在该 AWS 区域中不可用,请访问 AWS Support 中心并创建一个案例。

有关请求增加 AWS KMS 配额的帮助,请参阅请求增加 AWS KMS 配额.

如果您超出了 请求配额 GenerateDataKey 操作的 ,请考虑使用 的数据密钥缓存功能AWS 加密 SDK。重复使用数据密钥可减少向 提出请求的频率。AWS KMS.

除请求配额之外,AWS KMS 还使用资源配额来确保所有用户的容量。有关详细信息,请参阅 资源配额.

每个 请求配额 API 操作的AWS KMS

此表列出了 Service Quotas 配额代码以及每个AWS KMS请求配额的默认值。

注意

您可能需要水平或垂直滚动才能查看此表中的所有数据。

配额名称 默认值(每秒)

Cryptographic operations (symmetric) request rate

适用对象:

  • Decrypt

  • Encrypt

  • GenerateDataKey

  • GenerateDataKeyWithoutPlaintext

  • GenerateRandom

  • ReEncrypt

这些共享配额因 AWS 区域和请求CMK中使用的类型而异。每个配额都单独计算。

  • 5500(共享)

  • 在以下区域中为 10000(共享):

    • 美国东部(俄亥俄州),us-east-2

    • 亚太区域(新加坡),ap-southeast-1

    • 亚太区域(悉尼),ap-southeast-2

    • 亚太区域(东京),ap-northeast-1

    • 欧洲(法兰克福),eu-central-1

    • 欧洲(伦敦),eu-west-2

  • 在以下区域中为 50000(共享):

    • 美国东部(弗吉尼亚北部),us-east-1

    • 美国西部(俄勒冈),us-west-2

    • 欧洲(爱尔兰),eu-west-1

自定义密钥存储配额(对称 CMKs):

Cryptographic operations (RSA) request rate

适用对象:

  • Decrypt

  • Encrypt

  • ReEncrypt

  • Sign

  • Verify

500(共享),对于 RSA CMKs

Cryptographic operations (ECC) request rate

适用对象:

  • Sign

  • Verify

300(共享),对于椭圆曲线 (ECC) CMKs

CancelKeyDeletion request rate

5

ConnectCustomKeyStore request rate

5

CreateAlias request rate

5

CreateCustomKeyStore request rate

5

CreateGrant request rate

50

CreateKey request rate

5

DeleteAlias request rate

5

DeleteCustomKeyStore request rate

5

DeleteImportedKeyMaterial request rate

5

DescribeCustomKeyStores request rate

5

DescribeKey request rate

1000

DisableKey request rate

5

DisableKeyRotation request rate

5

DisconnectCustomKeyStore request rate

5

EnableKey request rate

5

EnableKeyRotation request rate

5

GenerateDataKeyPair (ECC_NIST_P256) request rate

适用对象:

  • GenerateDataKeyPair

  • GenerateDataKeyPairWithoutPlaintext

25

GenerateDataKeyPair (ECC_NIST_P384) request rate

适用对象:

  • GenerateDataKeyPair

  • GenerateDataKeyPairWithoutPlaintext

10

GenerateDataKeyPair (ECC_NIST_P521) request rate

适用对象:

  • GenerateDataKeyPair

  • GenerateDataKeyPairWithoutPlaintext

5

GenerateDataKeyPair (ECC_SECG_P256K1) request rate

适用对象:

  • GenerateDataKeyPair

  • GenerateDataKeyPairWithoutPlaintext

25

GenerateDataKeyPair (RSA_2048) request rate

适用对象:

  • GenerateDataKeyPair

  • GenerateDataKeyPairWithoutPlaintext

1

GenerateDataKeyPair (RSA_3072) request rate

适用对象:

  • GenerateDataKeyPair

  • GenerateDataKeyPairWithoutPlaintext

0.5(每 2 秒间隔为 1)

GenerateDataKeyPair (RSA_4096) request rate

适用对象:

  • GenerateDataKeyPair

  • GenerateDataKeyPairWithoutPlaintext

0.1(每 10 秒间隔为 1)

GetKeyPolicy request rate

1000

GetKeyRotationStatus request rate

1000

GetParametersForImport request rate

0.25(每 4 秒间隔为 1)

GetPublicKey request rate

5

ImportKeyMaterial request rate

5

ListAliases request rate

500

ListGrants request rate

100

ListKeyPolicies request rate

100

ListKeys request rate

500

ListResourceTags request rate

100

ListRetirableGrants request rate

100

PutKeyPolicy request rate

5

RetireGrant request rate

15

RevokeGrant request rate

15

ScheduleKeyDeletion request rate

5

TagResource request rate

5

UntagResource request rate

5

UpdateAlias request rate

5

UpdateCustomKeyStore request rate

5

UpdateKeyDescription request rate

5

应用 请求配额

在查看请求配额时,请记住以下信息。

  • 请求配额 适用于客户托管CMKs和管理AWS的 CMKs 。使用 AWS 拥有的 CMKs 不会计入您请求配额账户AWS的 ,即使它们用于保护您账户中的资源。

  • 请求配额适用于发送到 FIPS 终端节点和非 FIPS 终端节点的请求。有关AWS KMS服务终端节点的列表,请参阅 中的AWS Key Management Service终端节点和配额AWS General Reference。

  • 限制基于 区域中所有类型 上的CMKs所有请求。此总数包括来自 AWS 账户中所有委托人的请求,包括来自代表您的 AWS 服务的请求。

  • 每个请求配额都是单独计算的。例如, CreateKey 操作的请求不会影响 请求配额 CreateAlias 操作的 。如果 CreateAlias 请求受到限制,CreateKey 请求仍可成功完成。

  • 虽然加密操作共享一个配额,但共享配额是独立于其他操作的配额计算的。例如,对 EncryptDecrypt 操作的调用共享一个 请求配额,但该配额独立于管理操作(如 EnableKey )的配额。 例如,在 中欧洲(伦敦)区域,您可以对对称执行 10000 次加密操作CMKs然后每秒执行 5 次EnableKey操作而不会受到限制。

加密操作的共享配额

AWS KMS 加密操作共享请求配额. 您可以请求 支持的加密操作的任意组合CMK,只要加密操作的总数不超过请求配额该类型的 CMK。例外是 GenerateDataKeyPairGenerateDataKeyPairWithoutPlaintext ,它们共享单独的配额。

不同类型 的配额CMKs是单独计算的。每个配额适用于在每个 1 秒间隔内,在具有给定密钥类型的 AWS 账户和区域中,针对这些操作的所有请求。

  • 加密操作(对称)请求速率是账户和CMKs区域中使用对称的加密操作的共享请求配额。

    例如,您可能在共享配额为每秒 10000 个请求的 CMKs 区域中使用AWS对称。当您每秒发出 7000 个GenerateDataKey请求和 2000 个 Decrypt 请求时, AWS KMS 不会限制您的请求。但是,当您每秒发出 9500 个 GenerateDataKey 请求和 1000 个 Encrypt 和 请求时, 将AWS KMS限制您的请求,因为它们超出共享配额。

  • 加密操作 (RSA) 请求速率CMKs是使用 RSA 非对称 的加密操作的共享请求配额。

    例如,如果请求配额为每秒 500 个操作,您可以使用 RSA 发出 200 个加密请求和 100 个解密请求CMKs,这些请求可以加密和解密,另外再发出 50 个 Sign 请求和 150 个 Verify 请求CMKs,这些请求可以使用 RSA 进行签名和验证。

  • 加密操作 (ECC) 请求速率是使用椭圆曲线 (ECC) 非对称 CMKs 的加密操作的共享请求配额。

    例如,如果请求配额为每秒 300 个操作,您可以使用 RSA 发出 100 个签名请求和 200 个验证请求CMKs,以便 可以签名和验证。

不同密钥类型的配额也是单独计算的。例如,在 中亚太区域(新加坡),如果您同时使用对称和非对称 CMKs,则每秒最多可以发出 10000 次带对称的 调用CMKs,另外每秒最多可以发出 500 次附加调用CMKs,加上基于 ECC 的 每秒最多可以发出 300 个附加请求CMKs。

代表您发出的 API 请求

您可以直接发出 API 请求,也可以使用集成的 AWS 服务代表您向 AWS KMS 发出 API 请求。该配额对两种类型的请求都适用。

例如,您可以使用借助 Amazon S3 的服务器端加密 (SSE-KMS),将数据存储在 AWS KMS 中。每次上传或下载使用 SSE-KMS 进行加密的 S3 对象时,Amazon S3 都会代表您向 GenerateDataKey 发出 Decrypt(用于上传)或 AWS KMS(用于下载)请求。这些请求将计入配额,因此,如果使用 SSE-KMS 加密的 S3 对象的上传或下载总数超过每秒 5500(也可能是 10000 或 30000,具体取决于 AWS KMS 区域),AWS 将限制请求。

跨账户请求

当一个AWS账户中的应用程序使用由其他账户CMK拥有的时,它称为跨账户请求。对于跨账户请求, 将AWS KMS限制发出请求的账户,而不是拥有 的账户CMK。例如,如果账户 A 中的应用程序使用账户 B CMK 中的 ,则该CMK使用仅适用于账户 A 中的配额。

自定义密钥存储配额

AWS KMS 自定义密钥存储仅支持对称 CMKs。使用CMKs自定义密钥存储使用自定义密钥存储中的 的加密操作共享每个自定义密钥存储的每秒 请求配额 1800 次操作的 。但是,并非所有操作都同等地使用配额。GenerateDataKeyGenerateDataKeyWithoutPlaintextGenerateRandom 操作使用的每秒配额约为 EncryptDecryptReEncrypt 操作使用的每秒配额的 3 倍。

例如,如果您仅请求 EncryptDecrypt 操作,则每秒可执行约 1800 次操作。相反,如果您请求重复的 GenerateDataKey 操作,则性能可能更接近每秒 600 次操作。对于由大致相同数量的 GenerateDataKeyDecrypt 操作组成的应用程序模式,您可以预期每秒大约 1200 次操作。

与其他 AWS KMS 配额不同,自定义密钥存储配额不可调整。您不能使用 Service Quotas 或通过在 AWS Support. 中创建案例来增加它。

注意

如果与自定义密钥存储关联的 AWS CloudHSM 正在处理大量命令(包括与自定义密钥存储不相关的命令),则您可能以低于预期速率的速率获得 AWS KMSThrottlingException 如果发生此情况,请降低向 AWS KMS 发出请求的速率,减少不相关的负载或对自定义密钥存储使用专用 AWS CloudHSM 集群。