pub struct ImportCryptoKeyVersionRequest {
pub algorithm: Option<String>,
pub crypto_key_version: Option<String>,
pub import_job: Option<String>,
pub rsa_aes_wrapped_key: Option<Vec<u8>>,
pub wrapped_key: Option<Vec<u8>>,
}
Expand description
Request message for KeyManagementService.ImportCryptoKeyVersion.
§Activities
This type is used in activities, which are methods you may call on this type or where this type is involved in. The list links the activity name, along with information about where it is used (one of request and response).
Fields§
§algorithm: Option<String>
Required. The algorithm of the key being imported. This does not need to match the version_template of the CryptoKey this version imports into.
crypto_key_version: Option<String>
Optional. The optional name of an existing CryptoKeyVersion to target for an import operation. If this field is not present, a new CryptoKeyVersion containing the supplied key material is created. If this field is present, the supplied key material is imported into the existing CryptoKeyVersion. To import into an existing CryptoKeyVersion, the CryptoKeyVersion must be a child of ImportCryptoKeyVersionRequest.parent, have been previously created via ImportCryptoKeyVersion, and be in DESTROYED or IMPORT_FAILED state. The key material and algorithm must match the previous CryptoKeyVersion exactly if the CryptoKeyVersion has ever contained key material.
import_job: Option<String>
Required. The name of the ImportJob that was used to wrap this key material.
rsa_aes_wrapped_key: Option<Vec<u8>>
Optional. This field has the same meaning as wrapped_key. Prefer to use that field in new work. Either that field or this field (but not both) must be specified.
wrapped_key: Option<Vec<u8>>
Optional. The wrapped key material to import. Before wrapping, key material must be formatted. If importing symmetric key material, the expected key material format is plain bytes. If importing asymmetric key material, the expected key material format is PKCS#8-encoded DER (the PrivateKeyInfo structure from RFC 5208). When wrapping with import methods (RSA_OAEP_3072_SHA1_AES_256 or RSA_OAEP_4096_SHA1_AES_256 or RSA_OAEP_3072_SHA256_AES_256 or RSA_OAEP_4096_SHA256_AES_256), this field must contain the concatenation of: 1. An ephemeral AES-256 wrapping key wrapped with the public_key using RSAES-OAEP with SHA-1/SHA-256, MGF1 with SHA-1/SHA-256, and an empty label. 2. The formatted key to be imported, wrapped with the ephemeral AES-256 key using AES-KWP (RFC 5649). This format is the same as the format produced by PKCS#11 mechanism CKM_RSA_AES_KEY_WRAP. When wrapping with import methods (RSA_OAEP_3072_SHA256 or RSA_OAEP_4096_SHA256), this field must contain the formatted key to be imported, wrapped with the public_key using RSAES-OAEP with SHA-256, MGF1 with SHA-256, and an empty label.
Trait Implementations§
Source§impl Clone for ImportCryptoKeyVersionRequest
impl Clone for ImportCryptoKeyVersionRequest
Source§fn clone(&self) -> ImportCryptoKeyVersionRequest
fn clone(&self) -> ImportCryptoKeyVersionRequest
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Default for ImportCryptoKeyVersionRequest
impl Default for ImportCryptoKeyVersionRequest
Source§fn default() -> ImportCryptoKeyVersionRequest
fn default() -> ImportCryptoKeyVersionRequest
Source§impl<'de> Deserialize<'de> for ImportCryptoKeyVersionRequest
impl<'de> Deserialize<'de> for ImportCryptoKeyVersionRequest
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl RequestValue for ImportCryptoKeyVersionRequest
Auto Trait Implementations§
impl Freeze for ImportCryptoKeyVersionRequest
impl RefUnwindSafe for ImportCryptoKeyVersionRequest
impl Send for ImportCryptoKeyVersionRequest
impl Sync for ImportCryptoKeyVersionRequest
impl Unpin for ImportCryptoKeyVersionRequest
impl UnwindSafe for ImportCryptoKeyVersionRequest
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more