#[non_exhaustive]
pub enum CreateKeyError {
Show 14 variants CloudHsmClusterInvalidConfigurationException(CloudHsmClusterInvalidConfigurationException), CustomKeyStoreInvalidStateException(CustomKeyStoreInvalidStateException), CustomKeyStoreNotFoundException(CustomKeyStoreNotFoundException), DependencyTimeoutException(DependencyTimeoutException), InvalidArnException(InvalidArnException), KmsInternalException(KmsInternalException), LimitExceededException(LimitExceededException), MalformedPolicyDocumentException(MalformedPolicyDocumentException), TagException(TagException), UnsupportedOperationException(UnsupportedOperationException), XksKeyAlreadyInUseException(XksKeyAlreadyInUseException), XksKeyInvalidConfigurationException(XksKeyInvalidConfigurationException), XksKeyNotFoundException(XksKeyNotFoundException), Unhandled(Unhandled),
}
Expand description

Error type for the CreateKeyError operation.

Variants (Non-exhaustive)§

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
§

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, and CreateKey operations, the CloudHSM cluster must have at least two active HSMs, each in a different Availability Zone. For the ConnectCustomKeyStore 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 .

§

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 a ConnectionState of DISCONNECTING or FAILED. This operation is valid for all other ConnectionState values. To reconnect a custom key store in a FAILED 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 store ConnectionState is CONNECTED.

  • You requested the DisconnectCustomKeyStore operation on a custom key store with a ConnectionState of DISCONNECTING or DISCONNECTED. This operation is valid for all other ConnectionState values.

  • You requested the UpdateCustomKeyStore or DeleteCustomKeyStore operation on a custom key store that is not disconnected. This operation is valid only when the custom key store ConnectionState is DISCONNECTED.

  • You requested the GenerateRandom operation in an CloudHSM key store that is not connected. This operation is valid only when the CloudHSM key store ConnectionState is CONNECTED.

§

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.

§

InvalidArnException(InvalidArnException)

The request was rejected because a specified ARN, or an ARN in a key policy, is not valid.

§

KmsInternalException(KmsInternalException)

The request was rejected because an internal exception occurred. The request can be retried.

§

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.

§

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.

§

Unhandled(Unhandled)

👎Deprecated: Matching 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).

Implementations§

source§

impl CreateKeyError

source

pub fn unhandled(err: impl Into<Box<dyn Error + Send + Sync + 'static>>) -> Self

Creates the CreateKeyError::Unhandled variant from any error type.

source

pub fn generic(err: ErrorMetadata) -> Self

Creates the CreateKeyError::Unhandled variant from an ErrorMetadata.

source

pub fn meta(&self) -> &ErrorMetadata

Returns error metadata, which includes the error code, message, request ID, and potentially additional information.

source

pub fn is_cloud_hsm_cluster_invalid_configuration_exception(&self) -> bool

Returns true if the error kind is CreateKeyError::CloudHsmClusterInvalidConfigurationException.

source

pub fn is_custom_key_store_invalid_state_exception(&self) -> bool

Returns true if the error kind is CreateKeyError::CustomKeyStoreInvalidStateException.

source

pub fn is_custom_key_store_not_found_exception(&self) -> bool

Returns true if the error kind is CreateKeyError::CustomKeyStoreNotFoundException.

source

pub fn is_dependency_timeout_exception(&self) -> bool

Returns true if the error kind is CreateKeyError::DependencyTimeoutException.

source

pub fn is_invalid_arn_exception(&self) -> bool

Returns true if the error kind is CreateKeyError::InvalidArnException.

source

pub fn is_kms_internal_exception(&self) -> bool

Returns true if the error kind is CreateKeyError::KmsInternalException.

source

pub fn is_limit_exceeded_exception(&self) -> bool

Returns true if the error kind is CreateKeyError::LimitExceededException.

source

pub fn is_malformed_policy_document_exception(&self) -> bool

Returns true if the error kind is CreateKeyError::MalformedPolicyDocumentException.

source

pub fn is_tag_exception(&self) -> bool

Returns true if the error kind is CreateKeyError::TagException.

source

pub fn is_unsupported_operation_exception(&self) -> bool

Returns true if the error kind is CreateKeyError::UnsupportedOperationException.

source

pub fn is_xks_key_already_in_use_exception(&self) -> bool

Returns true if the error kind is CreateKeyError::XksKeyAlreadyInUseException.

source

pub fn is_xks_key_invalid_configuration_exception(&self) -> bool

Returns true if the error kind is CreateKeyError::XksKeyInvalidConfigurationException.

source

pub fn is_xks_key_not_found_exception(&self) -> bool

Returns true if the error kind is CreateKeyError::XksKeyNotFoundException.

Trait Implementations§

source§

impl CreateUnhandledError for CreateKeyError

source§

fn create_unhandled_error( source: Box<dyn Error + Send + Sync + 'static>, meta: Option<ErrorMetadata> ) -> Self

Creates an unhandled error variant with the given source and error metadata.
source§

impl Debug for CreateKeyError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for CreateKeyError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for CreateKeyError

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<CreateKeyError> for Error

source§

fn from(err: CreateKeyError) -> Self

Converts to this type from the input type.
source§

impl ProvideErrorKind for CreateKeyError

source§

fn code(&self) -> Option<&str>

Returns the code for this error if one exists
source§

fn retryable_error_kind(&self) -> Option<ErrorKind>

Returns the ErrorKind when the error is modeled as retryable Read more
source§

impl ProvideErrorMetadata for CreateKeyError

source§

fn meta(&self) -> &ErrorMetadata

Returns error metadata, which includes the error code, message, request ID, and potentially additional information.
source§

fn code(&self) -> Option<&str>

Returns the error code if it’s available.
source§

fn message(&self) -> Option<&str>

Returns the error message, if there is one.
source§

impl RequestId for CreateKeyError

source§

fn request_id(&self) -> Option<&str>

Returns the request ID, or None if the service could not be reached.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToString for T
where T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more