Struct google_api_proto::google::cloud::kms::v1::CryptoKeyVersion
source · pub struct CryptoKeyVersion {Show 16 fields
pub name: String,
pub state: i32,
pub protection_level: i32,
pub algorithm: i32,
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,
}
Expand description
A [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] represents an individual cryptographic key, and the associated key material.
An [ENABLED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.ENABLED] version can be used for cryptographic operations.
For security reasons, the raw cryptographic key material represented by a [CryptoKeyVersion][google.cloud.kms.v1.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§
§name: String
Output only. The resource name for this
[CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] in the format
projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*
.
state: i32
The current state of the [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion].
protection_level: i32
Output only. The [ProtectionLevel][google.cloud.kms.v1.ProtectionLevel] describing how crypto operations are performed with this [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion].
algorithm: i32
Output only. The [CryptoKeyVersionAlgorithm][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionAlgorithm] that this [CryptoKeyVersion][google.cloud.kms.v1.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][google.cloud.kms.v1.CryptoKeyVersion.protection_level] [HSM][google.cloud.kms.v1.ProtectionLevel.HSM].
create_time: Option<Timestamp>
Output only. The time at which this [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] was created.
generate_time: Option<Timestamp>
Output only. The time this [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]’s key material was generated.
destroy_time: Option<Timestamp>
Output only. The time this [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]’s key material is scheduled for destruction. Only present if [state][google.cloud.kms.v1.CryptoKeyVersion.state] is [DESTROY_SCHEDULED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.DESTROY_SCHEDULED].
destroy_event_time: Option<Timestamp>
Output only. The time this CryptoKeyVersion’s key material was destroyed. Only present if [state][google.cloud.kms.v1.CryptoKeyVersion.state] is [DESTROYED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.DESTROYED].
import_job: String
Output only. The name of the [ImportJob][google.cloud.kms.v1.ImportJob] used in the most recent import of this [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]. Only present if the underlying key material was imported.
import_time: Option<Timestamp>
Output only. The time at which this [CryptoKeyVersion][google.cloud.kms.v1.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][google.cloud.kms.v1.CryptoKeyVersion.state] is [IMPORT_FAILED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.IMPORT_FAILED].
generation_failure_reason: String
Output only. The root cause of the most recent generation failure. Only present if [state][google.cloud.kms.v1.CryptoKeyVersion.state] is [GENERATION_FAILED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.GENERATION_FAILED].
external_destruction_failure_reason: String
Output only. The root cause of the most recent external destruction failure. Only present if [state][google.cloud.kms.v1.CryptoKeyVersion.state] is [EXTERNAL_DESTRUCTION_FAILED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.EXTERNAL_DESTRUCTION_FAILED].
external_protection_level_options: Option<ExternalProtectionLevelOptions>
ExternalProtectionLevelOptions stores a group of additional fields for configuring a [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] that are specific to the [EXTERNAL][google.cloud.kms.v1.ProtectionLevel.EXTERNAL] protection level and [EXTERNAL_VPC][google.cloud.kms.v1.ProtectionLevel.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][google.cloud.kms.v1.ImportCryptoKeyVersionRequest.crypto_key_version].
Implementations§
source§impl CryptoKeyVersion
impl CryptoKeyVersion
sourcepub fn state(&self) -> CryptoKeyVersionState
pub fn state(&self) -> CryptoKeyVersionState
Returns the enum value of state
, or the default if the field is set to an invalid enum value.
sourcepub fn set_state(&mut self, value: CryptoKeyVersionState)
pub fn set_state(&mut self, value: CryptoKeyVersionState)
Sets state
to the provided enum value.
sourcepub fn protection_level(&self) -> ProtectionLevel
pub fn protection_level(&self) -> ProtectionLevel
Returns the enum value of protection_level
, or the default if the field is set to an invalid enum value.
sourcepub fn set_protection_level(&mut self, value: ProtectionLevel)
pub fn set_protection_level(&mut self, value: ProtectionLevel)
Sets protection_level
to the provided enum value.
sourcepub fn algorithm(&self) -> CryptoKeyVersionAlgorithm
pub fn algorithm(&self) -> CryptoKeyVersionAlgorithm
Returns the enum value of algorithm
, or the default if the field is set to an invalid enum value.
sourcepub fn set_algorithm(&mut self, value: CryptoKeyVersionAlgorithm)
pub fn set_algorithm(&mut self, value: CryptoKeyVersionAlgorithm)
Sets algorithm
to the provided enum value.
Trait Implementations§
source§impl Clone for CryptoKeyVersion
impl Clone for CryptoKeyVersion
source§fn clone(&self) -> CryptoKeyVersion
fn clone(&self) -> CryptoKeyVersion
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for CryptoKeyVersion
impl Debug for CryptoKeyVersion
source§impl Default for CryptoKeyVersion
impl Default for CryptoKeyVersion
source§impl Message for CryptoKeyVersion
impl Message for CryptoKeyVersion
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.source§impl PartialEq for CryptoKeyVersion
impl PartialEq for CryptoKeyVersion
source§fn eq(&self, other: &CryptoKeyVersion) -> bool
fn eq(&self, other: &CryptoKeyVersion) -> bool
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for CryptoKeyVersion
Auto Trait Implementations§
impl !Freeze for CryptoKeyVersion
impl RefUnwindSafe for CryptoKeyVersion
impl Send for CryptoKeyVersion
impl Sync for CryptoKeyVersion
impl Unpin for CryptoKeyVersion
impl UnwindSafe for CryptoKeyVersion
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request