pub enum AdministrativeSecretHandling {
Plaintext,
SystemdCreds,
ShamirsSecretSharing,
}
Expand description
The handling of administrative secrets.
Administrative secrets may be handled in different ways (e.g. persistent or non-persistent).
Variants§
Plaintext
The administrative secrets are handled in a plaintext file in a non-volatile directory.
§Warning
This variant should only be used in non-production test setups, as it implies the persistence of unencrypted administrative secrets on a file system.
SystemdCreds
The administrative secrets are handled in a file encrypted using systemd-creds in a non-volatile directory.
§Warning
This variant should only be used in non-production test setups, as it implies the persistence of (host-specific) encrypted administrative secrets on a file system, that could be extracted if the host is compromised.
ShamirsSecretSharing
The administrative secrets are handled using Shamir’s Secret Sharing (SSS).
This variant is the default for production use, as the administrative secrets are only ever exposed on a volatile filesystem for the time of their use. The secrets are only made available to the system as shares of a shared secret, split using SSS. This way no holder of a share is aware of the administrative secrets and the system only for as long as it needs to use the administrative secrets.
Trait Implementations§
Source§impl Clone for AdministrativeSecretHandling
impl Clone for AdministrativeSecretHandling
Source§fn clone(&self) -> AdministrativeSecretHandling
fn clone(&self) -> AdministrativeSecretHandling
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for AdministrativeSecretHandling
impl Debug for AdministrativeSecretHandling
Source§impl Default for AdministrativeSecretHandling
impl Default for AdministrativeSecretHandling
Source§fn default() -> AdministrativeSecretHandling
fn default() -> AdministrativeSecretHandling
Source§impl<'de> Deserialize<'de> for AdministrativeSecretHandling
impl<'de> Deserialize<'de> for AdministrativeSecretHandling
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 PartialEq for AdministrativeSecretHandling
impl PartialEq for AdministrativeSecretHandling
Source§fn eq(&self, other: &AdministrativeSecretHandling) -> bool
fn eq(&self, other: &AdministrativeSecretHandling) -> bool
self
and other
values to be equal, and is used by ==
.impl Copy for AdministrativeSecretHandling
impl Eq for AdministrativeSecretHandling
impl StructuralPartialEq for AdministrativeSecretHandling
Auto Trait Implementations§
impl Freeze for AdministrativeSecretHandling
impl RefUnwindSafe for AdministrativeSecretHandling
impl Send for AdministrativeSecretHandling
impl Sync for AdministrativeSecretHandling
impl Unpin for AdministrativeSecretHandling
impl UnwindSafe for AdministrativeSecretHandling
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,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.