CryptoKeyVersion

Struct CryptoKeyVersion 

Source
#[non_exhaustive]
pub struct CryptoKeyVersion {
Show 16 fields pub name: String, pub state: CryptoKeyVersionState, pub protection_level: ProtectionLevel, pub algorithm: CryptoKeyVersionAlgorithm, pub attestation: Option<KeyOperationAttestation>, pub create_time: Option<Timestamp>, pub generate_time: Option<Timestamp>, pub destroy_time: Option<Timestamp>, pub destroy_event_time: Option<Timestamp>, pub import_job: String, pub import_time: Option<Timestamp>, pub import_failure_reason: String, pub generation_failure_reason: String, pub external_destruction_failure_reason: String, pub external_protection_level_options: Option<ExternalProtectionLevelOptions>, pub reimport_eligible: bool, /* private fields */
}
Expand description

A CryptoKeyVersion represents an individual cryptographic key, and the associated key material.

An ENABLED version can be used for cryptographic operations.

For security reasons, the raw cryptographic key material represented by a CryptoKeyVersion can never be viewed or exported. It can only be used to encrypt, decrypt, or sign data when an authorized user or application invokes Cloud KMS.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§name: String

Output only. The resource name for this CryptoKeyVersion in the format projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*.

§state: CryptoKeyVersionState

The current state of the CryptoKeyVersion.

§protection_level: ProtectionLevel

Output only. The ProtectionLevel describing how crypto operations are performed with this CryptoKeyVersion.

§algorithm: CryptoKeyVersionAlgorithm

Output only. The CryptoKeyVersionAlgorithm that this CryptoKeyVersion supports.

§attestation: Option<KeyOperationAttestation>

Output only. Statement that was generated and signed by the HSM at key creation time. Use this statement to verify attributes of the key as stored on the HSM, independently of Google. Only provided for key versions with protection_level HSM.

§create_time: Option<Timestamp>

Output only. The time at which this CryptoKeyVersion was created.

§generate_time: Option<Timestamp>

Output only. The time this CryptoKeyVersion’s key material was generated.

§destroy_time: Option<Timestamp>

Output only. The time this CryptoKeyVersion’s key material is scheduled for destruction. Only present if state is DESTROY_SCHEDULED.

§destroy_event_time: Option<Timestamp>

Output only. The time this CryptoKeyVersion’s key material was destroyed. Only present if state is DESTROYED.

§import_job: String

Output only. The name of the ImportJob used in the most recent import of this CryptoKeyVersion. Only present if the underlying key material was imported.

§import_time: Option<Timestamp>

Output only. The time at which this CryptoKeyVersion’s key material was most recently imported.

§import_failure_reason: String

Output only. The root cause of the most recent import failure. Only present if state is IMPORT_FAILED.

§generation_failure_reason: String

Output only. The root cause of the most recent generation failure. Only present if state is GENERATION_FAILED.

§external_destruction_failure_reason: String

Output only. The root cause of the most recent external destruction failure. Only present if state is EXTERNAL_DESTRUCTION_FAILED.

§external_protection_level_options: Option<ExternalProtectionLevelOptions>

ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level and EXTERNAL_VPC protection levels.

§reimport_eligible: bool

Output only. Whether or not this key version is eligible for reimport, by being specified as a target in ImportCryptoKeyVersionRequest.crypto_key_version.

Implementations§

Source§

impl CryptoKeyVersion

Source

pub fn new() -> Self

Source

pub fn set_name<T: Into<String>>(self, v: T) -> Self

Sets the value of name.

Source

pub fn set_state<T: Into<CryptoKeyVersionState>>(self, v: T) -> Self

Sets the value of state.

Source

pub fn set_protection_level<T: Into<ProtectionLevel>>(self, v: T) -> Self

Sets the value of protection_level.

Source

pub fn set_algorithm<T: Into<CryptoKeyVersionAlgorithm>>(self, v: T) -> Self

Sets the value of algorithm.

Source

pub fn set_attestation<T>(self, v: T) -> Self

Sets the value of attestation.

Source

pub fn set_or_clear_attestation<T>(self, v: Option<T>) -> Self

Sets or clears the value of attestation.

Source

pub fn set_create_time<T>(self, v: T) -> Self
where T: Into<Timestamp>,

Sets the value of create_time.

Source

pub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
where T: Into<Timestamp>,

Sets or clears the value of create_time.

Source

pub fn set_generate_time<T>(self, v: T) -> Self
where T: Into<Timestamp>,

Sets the value of generate_time.

Source

pub fn set_or_clear_generate_time<T>(self, v: Option<T>) -> Self
where T: Into<Timestamp>,

Sets or clears the value of generate_time.

Source

pub fn set_destroy_time<T>(self, v: T) -> Self
where T: Into<Timestamp>,

Sets the value of destroy_time.

Source

pub fn set_or_clear_destroy_time<T>(self, v: Option<T>) -> Self
where T: Into<Timestamp>,

Sets or clears the value of destroy_time.

Source

pub fn set_destroy_event_time<T>(self, v: T) -> Self
where T: Into<Timestamp>,

Sets the value of destroy_event_time.

Source

pub fn set_or_clear_destroy_event_time<T>(self, v: Option<T>) -> Self
where T: Into<Timestamp>,

Sets or clears the value of destroy_event_time.

Source

pub fn set_import_job<T: Into<String>>(self, v: T) -> Self

Sets the value of import_job.

Source

pub fn set_import_time<T>(self, v: T) -> Self
where T: Into<Timestamp>,

Sets the value of import_time.

Source

pub fn set_or_clear_import_time<T>(self, v: Option<T>) -> Self
where T: Into<Timestamp>,

Sets or clears the value of import_time.

Source

pub fn set_import_failure_reason<T: Into<String>>(self, v: T) -> Self

Sets the value of import_failure_reason.

Source

pub fn set_generation_failure_reason<T: Into<String>>(self, v: T) -> Self

Sets the value of generation_failure_reason.

Source

pub fn set_external_destruction_failure_reason<T: Into<String>>( self, v: T, ) -> Self

Source

pub fn set_external_protection_level_options<T>(self, v: T) -> Self

Source

pub fn set_or_clear_external_protection_level_options<T>( self, v: Option<T>, ) -> Self

Sets or clears the value of external_protection_level_options.

Source

pub fn set_reimport_eligible<T: Into<bool>>(self, v: T) -> Self

Sets the value of reimport_eligible.

Trait Implementations§

Source§

impl Clone for CryptoKeyVersion

Source§

fn clone(&self) -> CryptoKeyVersion

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for CryptoKeyVersion

Source§

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

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

impl Default for CryptoKeyVersion

Source§

fn default() -> CryptoKeyVersion

Returns the “default value” for a type. Read more
Source§

impl Message for CryptoKeyVersion

Source§

fn typename() -> &'static str

The typename of this message.
Source§

impl PartialEq for CryptoKeyVersion

Source§

fn eq(&self, other: &CryptoKeyVersion) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for CryptoKeyVersion

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

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>,

Source§

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<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

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
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,