pub struct EncryptionSettings {
user_key: SymmetricCryptoKey,
pub(crate) private_key: Option<AsymmetricCryptoKey>,
org_keys: HashMap<Uuid, SymmetricCryptoKey>,
}
Fields§
§user_key: SymmetricCryptoKey
§private_key: Option<AsymmetricCryptoKey>
§org_keys: HashMap<Uuid, SymmetricCryptoKey>
Implementations§
Source§impl EncryptionSettings
impl EncryptionSettings
Sourcepub(crate) fn new(
master_key: MasterKey,
user_key: EncString,
private_key: EncString,
) -> Result<Self, EncryptionSettingsError>
pub(crate) fn new( master_key: MasterKey, user_key: EncString, private_key: EncString, ) -> Result<Self, EncryptionSettingsError>
Initialize the encryption settings with the master key and the encrypted user keys
Sourcepub(crate) fn new_decrypted_key(
user_key: SymmetricCryptoKey,
private_key: EncString,
) -> Result<Self, EncryptionSettingsError>
pub(crate) fn new_decrypted_key( user_key: SymmetricCryptoKey, private_key: EncString, ) -> Result<Self, EncryptionSettingsError>
Initialize the encryption settings with the decrypted user key and the encrypted user private key This should only be used when unlocking the vault via biometrics or when the vault is set to lock: “never” Otherwise handling the decrypted user key is dangerous and discouraged
Sourcepub(crate) fn new_single_key(key: SymmetricCryptoKey) -> Self
pub(crate) fn new_single_key(key: SymmetricCryptoKey) -> Self
Initialize the encryption settings with only a single decrypted key. This is used only for logging in Secrets Manager with an access token
pub(crate) fn set_org_keys( &mut self, org_enc_keys: Vec<(Uuid, AsymmetricEncString)>, ) -> Result<&Self, EncryptionSettingsError>
pub fn get_key( &self, org_id: &Option<Uuid>, ) -> Result<&SymmetricCryptoKey, CryptoError>
Trait Implementations§
Source§impl Clone for EncryptionSettings
impl Clone for EncryptionSettings
Source§fn clone(&self) -> EncryptionSettings
fn clone(&self) -> EncryptionSettings
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for EncryptionSettings
impl Debug for EncryptionSettings
Auto Trait Implementations§
impl Freeze for EncryptionSettings
impl RefUnwindSafe for EncryptionSettings
impl Send for EncryptionSettings
impl Sync for EncryptionSettings
impl Unpin for EncryptionSettings
impl UnwindSafe for EncryptionSettings
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> CompatExt for T
impl<T> CompatExt for T
§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
§fn new_handle(value: Arc<T>) -> Handle
fn new_handle(value: Arc<T>) -> Handle
Create a new handle for an Arc value Read more
§unsafe fn clone_handle(handle: Handle) -> Handle
unsafe fn clone_handle(handle: Handle) -> Handle
Clone a handle Read more
§unsafe fn consume_handle(handle: Handle) -> Arc<T>
unsafe fn consume_handle(handle: Handle) -> Arc<T>
Consume a handle, getting back the initial
Arc<>
Read more§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> 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>
Converts
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>
Converts
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