Enum aws_sdk_kms::Error
source · #[non_exhaustive]pub enum Error {
Show 48 variants
AlreadyExistsException(AlreadyExistsException),
CloudHsmClusterInUseException(CloudHsmClusterInUseException),
CloudHsmClusterInvalidConfigurationException(CloudHsmClusterInvalidConfigurationException),
CloudHsmClusterNotActiveException(CloudHsmClusterNotActiveException),
CloudHsmClusterNotFoundException(CloudHsmClusterNotFoundException),
CloudHsmClusterNotRelatedException(CloudHsmClusterNotRelatedException),
CustomKeyStoreHasCmKsException(CustomKeyStoreHasCmKsException),
CustomKeyStoreInvalidStateException(CustomKeyStoreInvalidStateException),
CustomKeyStoreNameInUseException(CustomKeyStoreNameInUseException),
CustomKeyStoreNotFoundException(CustomKeyStoreNotFoundException),
DependencyTimeoutException(DependencyTimeoutException),
DisabledException(DisabledException),
DryRunOperationException(DryRunOperationException),
ExpiredImportTokenException(ExpiredImportTokenException),
IncorrectKeyException(IncorrectKeyException),
IncorrectKeyMaterialException(IncorrectKeyMaterialException),
IncorrectTrustAnchorException(IncorrectTrustAnchorException),
InvalidAliasNameException(InvalidAliasNameException),
InvalidArnException(InvalidArnException),
InvalidCiphertextException(InvalidCiphertextException),
InvalidGrantIdException(InvalidGrantIdException),
InvalidGrantTokenException(InvalidGrantTokenException),
InvalidImportTokenException(InvalidImportTokenException),
InvalidKeyUsageException(InvalidKeyUsageException),
InvalidMarkerException(InvalidMarkerException),
KmsInternalException(KmsInternalException),
KmsInvalidMacException(KmsInvalidMacException),
KmsInvalidSignatureException(KmsInvalidSignatureException),
KmsInvalidStateException(KmsInvalidStateException),
KeyUnavailableException(KeyUnavailableException),
LimitExceededException(LimitExceededException),
MalformedPolicyDocumentException(MalformedPolicyDocumentException),
NotFoundException(NotFoundException),
TagException(TagException),
UnsupportedOperationException(UnsupportedOperationException),
XksKeyAlreadyInUseException(XksKeyAlreadyInUseException),
XksKeyInvalidConfigurationException(XksKeyInvalidConfigurationException),
XksKeyNotFoundException(XksKeyNotFoundException),
XksProxyIncorrectAuthenticationCredentialException(XksProxyIncorrectAuthenticationCredentialException),
XksProxyInvalidConfigurationException(XksProxyInvalidConfigurationException),
XksProxyInvalidResponseException(XksProxyInvalidResponseException),
XksProxyUriEndpointInUseException(XksProxyUriEndpointInUseException),
XksProxyUriInUseException(XksProxyUriInUseException),
XksProxyUriUnreachableException(XksProxyUriUnreachableException),
XksProxyVpcEndpointServiceInUseException(XksProxyVpcEndpointServiceInUseException),
XksProxyVpcEndpointServiceInvalidConfigurationException(XksProxyVpcEndpointServiceInvalidConfigurationException),
XksProxyVpcEndpointServiceNotFoundException(XksProxyVpcEndpointServiceNotFoundException),
Unhandled(Unhandled),
}
Expand description
All possible error types for this service.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
AlreadyExistsException(AlreadyExistsException)
The request was rejected because it attempted to create a resource that already exists.
CloudHsmClusterInUseException(CloudHsmClusterInUseException)
The request was rejected because the specified CloudHSM cluster is already associated with an CloudHSM key store in the account, or it shares a backup history with an CloudHSM key store in the account. Each CloudHSM key store in the account must be associated with a different CloudHSM cluster.
CloudHSM clusters that share a backup history have the same cluster certificate. To view the cluster certificate of an CloudHSM cluster, use the DescribeClusters operation.
CloudHsmClusterInvalidConfigurationException(CloudHsmClusterInvalidConfigurationException)
The request was rejected because the associated CloudHSM cluster did not meet the configuration requirements for an CloudHSM key store.
-
The CloudHSM cluster must be configured with private subnets in at least two different Availability Zones in the Region.
-
The security group for the cluster (cloudhsm-cluster-
-sg) must include inbound rules and outbound rules that allow TCP traffic on ports 2223-2225. The Source in the inbound rules and the Destination in the outbound rules must match the security group ID. These rules are set by default when you create the CloudHSM cluster. Do not delete or change them. To get information about a particular security group, use the DescribeSecurityGroups operation. -
The CloudHSM cluster must contain at least as many HSMs as the operation requires. To add HSMs, use the CloudHSM CreateHsm operation.
For the
CreateCustomKeyStore
,UpdateCustomKeyStore
, andCreateKey
operations, the CloudHSM cluster must have at least two active HSMs, each in a different Availability Zone. For theConnectCustomKeyStore
operation, the CloudHSM must contain at least one active HSM.
For information about the requirements for an CloudHSM cluster that is associated with an CloudHSM key store, see Assemble the Prerequisites in the Key Management Service Developer Guide. For information about creating a private subnet for an CloudHSM cluster, see Create a Private Subnet in the CloudHSM User Guide. For information about cluster security groups, see Configure a Default Security Group in the CloudHSM User Guide .
CloudHsmClusterNotActiveException(CloudHsmClusterNotActiveException)
The request was rejected because the CloudHSM cluster associated with the CloudHSM key store is not active. Initialize and activate the cluster and try the command again. For detailed instructions, see Getting Started in the CloudHSM User Guide.
CloudHsmClusterNotFoundException(CloudHsmClusterNotFoundException)
The request was rejected because KMS cannot find the CloudHSM cluster with the specified cluster ID. Retry the request with a different cluster ID.
CloudHsmClusterNotRelatedException(CloudHsmClusterNotRelatedException)
The request was rejected because the specified CloudHSM cluster has a different cluster certificate than the original cluster. You cannot use the operation to specify an unrelated cluster for an CloudHSM key store.
Specify an CloudHSM cluster that shares a backup history with the original cluster. This includes clusters that were created from a backup of the current cluster, and clusters that were created from the same backup that produced the current cluster.
CloudHSM clusters that share a backup history have the same cluster certificate. To view the cluster certificate of an CloudHSM cluster, use the DescribeClusters operation.
CustomKeyStoreHasCmKsException(CustomKeyStoreHasCmKsException)
The request was rejected because the custom key store contains KMS keys. After verifying that you do not need to use the KMS keys, use the ScheduleKeyDeletion
operation to delete the KMS keys. After they are deleted, you can delete the custom key store.
CustomKeyStoreInvalidStateException(CustomKeyStoreInvalidStateException)
The request was rejected because of the ConnectionState
of the custom key store. To get the ConnectionState
of a custom key store, use the DescribeCustomKeyStores
operation.
This exception is thrown under the following conditions:
-
You requested the
ConnectCustomKeyStore
operation on a custom key store with aConnectionState
ofDISCONNECTING
orFAILED
. This operation is valid for all otherConnectionState
values. To reconnect a custom key store in aFAILED
state, disconnect it (DisconnectCustomKeyStore
), then connect it (ConnectCustomKeyStore
). -
You requested the
CreateKey
operation in a custom key store that is not connected. This operations is valid only when the custom key storeConnectionState
isCONNECTED
. -
You requested the
DisconnectCustomKeyStore
operation on a custom key store with aConnectionState
ofDISCONNECTING
orDISCONNECTED
. This operation is valid for all otherConnectionState
values. -
You requested the
UpdateCustomKeyStore
orDeleteCustomKeyStore
operation on a custom key store that is not disconnected. This operation is valid only when the custom key storeConnectionState
isDISCONNECTED
. -
You requested the
GenerateRandom
operation in an CloudHSM key store that is not connected. This operation is valid only when the CloudHSM key storeConnectionState
isCONNECTED
.
CustomKeyStoreNameInUseException(CustomKeyStoreNameInUseException)
The request was rejected because the specified custom key store name is already assigned to another custom key store in the account. Try again with a custom key store name that is unique in the account.
CustomKeyStoreNotFoundException(CustomKeyStoreNotFoundException)
The request was rejected because KMS cannot find a custom key store with the specified key store name or ID.
DependencyTimeoutException(DependencyTimeoutException)
The system timed out while trying to fulfill the request. You can retry the request.
DisabledException(DisabledException)
The request was rejected because the specified KMS key is not enabled.
DryRunOperationException(DryRunOperationException)
The request was rejected because the DryRun parameter was specified.
ExpiredImportTokenException(ExpiredImportTokenException)
The request was rejected because the specified import token is expired. Use GetParametersForImport
to get a new import token and public key, use the new public key to encrypt the key material, and then try the request again.
IncorrectKeyException(IncorrectKeyException)
The request was rejected because the specified KMS key cannot decrypt the data. The KeyId
in a Decrypt
request and the SourceKeyId
in a ReEncrypt
request must identify the same KMS key that was used to encrypt the ciphertext.
IncorrectKeyMaterialException(IncorrectKeyMaterialException)
The request was rejected because the key material in the request is, expired, invalid, or is not the same key material that was previously imported into this KMS key.
IncorrectTrustAnchorException(IncorrectTrustAnchorException)
The request was rejected because the trust anchor certificate in the request to create an CloudHSM key store is not the trust anchor certificate for the specified CloudHSM cluster.
When you initialize the CloudHSM cluster, you create the trust anchor certificate and save it in the customerCA.crt
file.
InvalidAliasNameException(InvalidAliasNameException)
The request was rejected because the specified alias name is not valid.
InvalidArnException(InvalidArnException)
The request was rejected because a specified ARN, or an ARN in a key policy, is not valid.
InvalidCiphertextException(InvalidCiphertextException)
From the Decrypt
or ReEncrypt
operation, the request was rejected because the specified ciphertext, or additional authenticated data incorporated into the ciphertext, such as the encryption context, is corrupted, missing, or otherwise invalid.
From the ImportKeyMaterial
operation, the request was rejected because KMS could not decrypt the encrypted (wrapped) key material.
InvalidGrantIdException(InvalidGrantIdException)
The request was rejected because the specified GrantId
is not valid.
InvalidGrantTokenException(InvalidGrantTokenException)
The request was rejected because the specified grant token is not valid.
InvalidImportTokenException(InvalidImportTokenException)
The request was rejected because the provided import token is invalid or is associated with a different KMS key.
InvalidKeyUsageException(InvalidKeyUsageException)
The request was rejected for one of the following reasons:
-
The
KeyUsage
value of the KMS key is incompatible with the API operation. -
The encryption algorithm or signing algorithm specified for the operation is incompatible with the type of key material in the KMS key
(KeySpec
).
For encrypting, decrypting, re-encrypting, and generating data keys, the KeyUsage
must be ENCRYPT_DECRYPT
. For signing and verifying messages, the KeyUsage
must be SIGN_VERIFY
. For generating and verifying message authentication codes (MACs), the KeyUsage
must be GENERATE_VERIFY_MAC
. To find the KeyUsage
of a KMS key, use the DescribeKey
operation.
To find the encryption or signing algorithms supported for a particular KMS key, use the DescribeKey
operation.
InvalidMarkerException(InvalidMarkerException)
The request was rejected because the marker that specifies where pagination should next begin is not valid.
KmsInternalException(KmsInternalException)
The request was rejected because an internal exception occurred. The request can be retried.
KmsInvalidMacException(KmsInvalidMacException)
The request was rejected because the HMAC verification failed. HMAC verification fails when the HMAC computed by using the specified message, HMAC KMS key, and MAC algorithm does not match the HMAC specified in the request.
KmsInvalidSignatureException(KmsInvalidSignatureException)
The request was rejected because the signature verification failed. Signature verification fails when it cannot confirm that signature was produced by signing the specified message with the specified KMS key and signing algorithm.
KmsInvalidStateException(KmsInvalidStateException)
The request was rejected because the state of the specified resource is not valid for this request.
This exceptions means one of the following:
-
The key state of the KMS key is not compatible with the operation.
To find the key state, use the
DescribeKey
operation. For more information about which key states are compatible with each KMS operation, see Key states of KMS keys in the Key Management Service Developer Guide . -
For cryptographic operations on KMS keys in custom key stores, this exception represents a general failure with many possible causes. To identify the cause, see the error message that accompanies the exception.
The request was rejected because the specified KMS key was not available. You can retry the request.
LimitExceededException(LimitExceededException)
The request was rejected because a quota was exceeded. For more information, see Quotas in the Key Management Service Developer Guide.
MalformedPolicyDocumentException(MalformedPolicyDocumentException)
The request was rejected because the specified policy is not syntactically or semantically correct.
NotFoundException(NotFoundException)
The request was rejected because the specified entity or resource could not be found.
TagException(TagException)
The request was rejected because one or more tags are not valid.
UnsupportedOperationException(UnsupportedOperationException)
The request was rejected because a specified parameter is not supported or a specified resource is not valid for this operation.
XksKeyAlreadyInUseException(XksKeyAlreadyInUseException)
The request was rejected because the (XksKeyId
) is already associated with another KMS key in this external key store. Each KMS key in an external key store must be associated with a different external key.
XksKeyInvalidConfigurationException(XksKeyInvalidConfigurationException)
The request was rejected because the external key specified by the XksKeyId
parameter did not meet the configuration requirements for an external key store.
The external key must be an AES-256 symmetric key that is enabled and performs encryption and decryption.
XksKeyNotFoundException(XksKeyNotFoundException)
The request was rejected because the external key store proxy could not find the external key. This exception is thrown when the value of the XksKeyId
parameter doesn't identify a key in the external key manager associated with the external key proxy.
Verify that the XksKeyId
represents an existing key in the external key manager. Use the key identifier that the external key store proxy uses to identify the key. For details, see the documentation provided with your external key store proxy or key manager.
XksProxyIncorrectAuthenticationCredentialException(XksProxyIncorrectAuthenticationCredentialException)
The request was rejected because the proxy credentials failed to authenticate to the specified external key store proxy. The specified external key store proxy rejected a status request from KMS due to invalid credentials. This can indicate an error in the credentials or in the identification of the external key store proxy.
XksProxyInvalidConfigurationException(XksProxyInvalidConfigurationException)
The request was rejected because the external key store proxy is not configured correctly. To identify the cause, see the error message that accompanies the exception.
XksProxyInvalidResponseException(XksProxyInvalidResponseException)
KMS cannot interpret the response it received from the external key store proxy. The problem might be a poorly constructed response, but it could also be a transient network issue. If you see this error repeatedly, report it to the proxy vendor.
XksProxyUriEndpointInUseException(XksProxyUriEndpointInUseException)
The request was rejected because the XksProxyUriEndpoint
is already associated with another external key store in this Amazon Web Services Region. To identify the cause, see the error message that accompanies the exception.
XksProxyUriInUseException(XksProxyUriInUseException)
The request was rejected because the concatenation of the XksProxyUriEndpoint
and XksProxyUriPath
is already associated with another external key store in this Amazon Web Services Region. Each external key store in a Region must use a unique external key store proxy API address.
XksProxyUriUnreachableException(XksProxyUriUnreachableException)
KMS was unable to reach the specified XksProxyUriPath
. The path must be reachable before you create the external key store or update its settings.
This exception is also thrown when the external key store proxy response to a GetHealthStatus
request indicates that all external key manager instances are unavailable.
XksProxyVpcEndpointServiceInUseException(XksProxyVpcEndpointServiceInUseException)
The request was rejected because the specified Amazon VPC endpoint service is already associated with another external key store in this Amazon Web Services Region. Each external key store in a Region must use a different Amazon VPC endpoint service.
XksProxyVpcEndpointServiceInvalidConfigurationException(XksProxyVpcEndpointServiceInvalidConfigurationException)
The request was rejected because the Amazon VPC endpoint service configuration does not fulfill the requirements for an external key store. To identify the cause, see the error message that accompanies the exception and review the requirements for Amazon VPC endpoint service connectivity for an external key store.
XksProxyVpcEndpointServiceNotFoundException(XksProxyVpcEndpointServiceNotFoundException)
The request was rejected because KMS could not find the specified VPC endpoint service. Use DescribeCustomKeyStores
to verify the VPC endpoint service name for the external key store. Also, confirm that the Allow principals
list for the VPC endpoint service includes the KMS service principal for the Region, such as cks.kms.us-east-1.amazonaws.com
.
Unhandled(Unhandled)
Unhandled
directly is not forwards compatible. Instead, match using a variable wildcard pattern and check .code()
:
err if err.code() == Some("SpecificExceptionCode") => { /* handle the error */ }
See ProvideErrorMetadata
for what information is available for the error.An unexpected error occurred (e.g., invalid JSON returned by the service or an unknown error code).