#[non_exhaustive]pub enum ProtectionLevel {
Unspecified,
Software,
Hsm,
External,
ExternalVpc,
UnknownValue(UnknownValue),
}Expand description
ProtectionLevel specifies how cryptographic operations are performed. For more information, see [Protection levels] (https://cloud.google.com/kms/docs/algorithms#protection_levels).
§Working with unknown values
This enum is defined as #[non_exhaustive] because Google Cloud may add
additional enum variants at any time. Adding new variants is not considered
a breaking change. Applications should write their code in anticipation of:
- New values appearing in future releases of the client library, and
- New values received dynamically, without application changes.
Please consult the Working with enums section in the user guide for some guidelines.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Unspecified
Not specified.
Software
Crypto operations are performed in software.
Hsm
Crypto operations are performed in a Hardware Security Module.
External
Crypto operations are performed by an external key manager.
ExternalVpc
Crypto operations are performed in an EKM-over-VPC backend.
UnknownValue(UnknownValue)
If set, the enum was initialized with an unknown value.
Applications can examine the value using ProtectionLevel::value or ProtectionLevel::name.
Implementations§
Trait Implementations§
Source§impl Clone for ProtectionLevel
impl Clone for ProtectionLevel
Source§fn clone(&self) -> ProtectionLevel
fn clone(&self) -> ProtectionLevel
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ProtectionLevel
impl Debug for ProtectionLevel
Source§impl Default for ProtectionLevel
impl Default for ProtectionLevel
Source§impl<'de> Deserialize<'de> for ProtectionLevel
impl<'de> Deserialize<'de> for ProtectionLevel
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>,
Source§impl Display for ProtectionLevel
impl Display for ProtectionLevel
Source§impl From<&str> for ProtectionLevel
impl From<&str> for ProtectionLevel
Source§impl From<i32> for ProtectionLevel
impl From<i32> for ProtectionLevel
Source§impl PartialEq for ProtectionLevel
impl PartialEq for ProtectionLevel
Source§impl Serialize for ProtectionLevel
impl Serialize for ProtectionLevel
impl StructuralPartialEq for ProtectionLevel
Auto Trait Implementations§
impl Freeze for ProtectionLevel
impl RefUnwindSafe for ProtectionLevel
impl Send for ProtectionLevel
impl Sync for ProtectionLevel
impl Unpin for ProtectionLevel
impl UnwindSafe for ProtectionLevel
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> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.