#[non_exhaustive]pub struct ImportKeyMaterialInput {
pub key_id: Option<String>,
pub import_token: Option<Blob>,
pub encrypted_key_material: Option<Blob>,
pub valid_to: Option<DateTime>,
pub expiration_model: Option<ExpirationModelType>,
}
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.key_id: Option<String>
The identifier of the KMS key that will be associated with the imported key material. This must be the same KMS key specified in the KeyID
parameter of the corresponding GetParametersForImport
request. The Origin
of the KMS key must be EXTERNAL
and its KeyState
must be PendingImport
.
The KMS key can be a symmetric encryption KMS key, HMAC KMS key, asymmetric encryption KMS key, or asymmetric signing KMS key, including a multi-Region key of any supported type. You cannot perform this operation on a KMS key in a custom key store, or on a KMS key in a different Amazon Web Services account.
Specify the key ID or key ARN of the KMS key.
For example:
-
Key ID:
1234abcd-12ab-34cd-56ef-1234567890ab
-
Key ARN:
arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
To get the key ID and key ARN for a KMS key, use ListKeys
or DescribeKey
.
import_token: Option<Blob>
The import token that you received in the response to a previous GetParametersForImport
request. It must be from the same response that contained the public key that you used to encrypt the key material.
encrypted_key_material: Option<Blob>
The encrypted key material to import. The key material must be encrypted under the public wrapping key that GetParametersForImport
returned, using the wrapping algorithm that you specified in the same GetParametersForImport
request.
valid_to: Option<DateTime>
The date and time when the imported key material expires. This parameter is required when the value of the ExpirationModel
parameter is KEY_MATERIAL_EXPIRES
. Otherwise it is not valid.
The value of this parameter must be a future date and time. The maximum value is 365 days from the request date.
When the key material expires, KMS deletes the key material from the KMS key. Without its key material, the KMS key is unusable. To use the KMS key in cryptographic operations, you must reimport the same key material.
You cannot change the ExpirationModel
or ValidTo
values for the current import after the request completes. To change either value, you must delete (DeleteImportedKeyMaterial
) and reimport the key material.
expiration_model: Option<ExpirationModelType>
Specifies whether the key material expires. The default is KEY_MATERIAL_EXPIRES
. For help with this choice, see Setting an expiration time in the Key Management Service Developer Guide.
When the value of ExpirationModel
is KEY_MATERIAL_EXPIRES
, you must specify a value for the ValidTo
parameter. When value is KEY_MATERIAL_DOES_NOT_EXPIRE
, you must omit the ValidTo
parameter.
You cannot change the ExpirationModel
or ValidTo
values for the current import after the request completes. To change either value, you must reimport the key material.
Implementations§
source§impl ImportKeyMaterialInput
impl ImportKeyMaterialInput
sourcepub fn key_id(&self) -> Option<&str>
pub fn key_id(&self) -> Option<&str>
The identifier of the KMS key that will be associated with the imported key material. This must be the same KMS key specified in the KeyID
parameter of the corresponding GetParametersForImport
request. The Origin
of the KMS key must be EXTERNAL
and its KeyState
must be PendingImport
.
The KMS key can be a symmetric encryption KMS key, HMAC KMS key, asymmetric encryption KMS key, or asymmetric signing KMS key, including a multi-Region key of any supported type. You cannot perform this operation on a KMS key in a custom key store, or on a KMS key in a different Amazon Web Services account.
Specify the key ID or key ARN of the KMS key.
For example:
-
Key ID:
1234abcd-12ab-34cd-56ef-1234567890ab
-
Key ARN:
arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
To get the key ID and key ARN for a KMS key, use ListKeys
or DescribeKey
.
sourcepub fn import_token(&self) -> Option<&Blob>
pub fn import_token(&self) -> Option<&Blob>
The import token that you received in the response to a previous GetParametersForImport
request. It must be from the same response that contained the public key that you used to encrypt the key material.
sourcepub fn encrypted_key_material(&self) -> Option<&Blob>
pub fn encrypted_key_material(&self) -> Option<&Blob>
The encrypted key material to import. The key material must be encrypted under the public wrapping key that GetParametersForImport
returned, using the wrapping algorithm that you specified in the same GetParametersForImport
request.
sourcepub fn valid_to(&self) -> Option<&DateTime>
pub fn valid_to(&self) -> Option<&DateTime>
The date and time when the imported key material expires. This parameter is required when the value of the ExpirationModel
parameter is KEY_MATERIAL_EXPIRES
. Otherwise it is not valid.
The value of this parameter must be a future date and time. The maximum value is 365 days from the request date.
When the key material expires, KMS deletes the key material from the KMS key. Without its key material, the KMS key is unusable. To use the KMS key in cryptographic operations, you must reimport the same key material.
You cannot change the ExpirationModel
or ValidTo
values for the current import after the request completes. To change either value, you must delete (DeleteImportedKeyMaterial
) and reimport the key material.
sourcepub fn expiration_model(&self) -> Option<&ExpirationModelType>
pub fn expiration_model(&self) -> Option<&ExpirationModelType>
Specifies whether the key material expires. The default is KEY_MATERIAL_EXPIRES
. For help with this choice, see Setting an expiration time in the Key Management Service Developer Guide.
When the value of ExpirationModel
is KEY_MATERIAL_EXPIRES
, you must specify a value for the ValidTo
parameter. When value is KEY_MATERIAL_DOES_NOT_EXPIRE
, you must omit the ValidTo
parameter.
You cannot change the ExpirationModel
or ValidTo
values for the current import after the request completes. To change either value, you must reimport the key material.
source§impl ImportKeyMaterialInput
impl ImportKeyMaterialInput
sourcepub fn builder() -> ImportKeyMaterialInputBuilder
pub fn builder() -> ImportKeyMaterialInputBuilder
Creates a new builder-style object to manufacture ImportKeyMaterialInput
.
Trait Implementations§
source§impl Clone for ImportKeyMaterialInput
impl Clone for ImportKeyMaterialInput
source§fn clone(&self) -> ImportKeyMaterialInput
fn clone(&self) -> ImportKeyMaterialInput
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for ImportKeyMaterialInput
impl Debug for ImportKeyMaterialInput
source§impl PartialEq for ImportKeyMaterialInput
impl PartialEq for ImportKeyMaterialInput
source§fn eq(&self, other: &ImportKeyMaterialInput) -> bool
fn eq(&self, other: &ImportKeyMaterialInput) -> bool
self
and other
values to be equal, and is used
by ==
.