pub enum DataEnvelopeNamespace {
VaultItem = 1,
OrganizationInvite = 2,
RegistrationOpenOrgInviteData = 3,
PamTargetSystem = 4,
PamRotationConfig = 5,
}Expand description
Data envelopes are domain-separated within bitwarden, to prevent cross protocol attacks.
A new struct shall use a new data envelope namespace. Generally, this means that a data envelope namespace has exactly one associated valid message struct. Internal versioning within a namespace is permitted and up to the domain owner to ensure is done correctly.
Variants§
VaultItem = 1
The namespace for vault items (“ciphers”)
OrganizationInvite = 2
The namespace for organization member invite data (the organization public-key thumbprint and the invite secret), sealed with the invite key.
RegistrationOpenOrgInviteData = 3
Namespace for the invite context payload sealed on registration-start and unsealed on registration-finish so an anonymous, email-verified new user can complete an open organization invite in a single flow.
PamTargetSystem = 4
Namespace for PAM target systems (bitwarden-pam-sealed::TargetSystemSealed), sealed by
the admin client so a hostile server cannot change what the access connector rotates or
how.
PamRotationConfig = 5
Namespace for PAM rotation configs (bitwarden-pam-sealed::RotationConfigSealed), sealed
for the same reason as DataEnvelopeNamespace::PamTargetSystem.
Implementations§
Trait Implementations§
Source§impl Clone for DataEnvelopeNamespace
impl Clone for DataEnvelopeNamespace
Source§fn clone(&self) -> DataEnvelopeNamespace
fn clone(&self) -> DataEnvelopeNamespace
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl ContentNamespace for DataEnvelopeNamespace
impl Copy for DataEnvelopeNamespace
Source§impl Debug for DataEnvelopeNamespace
impl Debug for DataEnvelopeNamespace
impl Eq for DataEnvelopeNamespace
Source§impl From<DataEnvelopeNamespace> for i128
impl From<DataEnvelopeNamespace> for i128
Source§fn from(val: DataEnvelopeNamespace) -> Self
fn from(val: DataEnvelopeNamespace) -> Self
Source§impl PartialEq for DataEnvelopeNamespace
impl PartialEq for DataEnvelopeNamespace
impl StructuralPartialEq for DataEnvelopeNamespace
Source§impl TryFrom<i64> for DataEnvelopeNamespace
impl TryFrom<i64> for DataEnvelopeNamespace
Auto Trait Implementations§
impl Freeze for DataEnvelopeNamespace
impl RefUnwindSafe for DataEnvelopeNamespace
impl Send for DataEnvelopeNamespace
impl Sync for DataEnvelopeNamespace
impl Unpin for DataEnvelopeNamespace
impl UnsafeUnpin for DataEnvelopeNamespace
impl UnwindSafe for DataEnvelopeNamespace
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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<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.§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
§unsafe fn clone_handle(handle: Handle) -> Handle
unsafe fn clone_handle(handle: Handle) -> Handle
§unsafe fn consume_handle(handle: Handle) -> Arc<T> ⓘ
unsafe fn consume_handle(handle: Handle) -> Arc<T> ⓘ
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> ⓘ
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> ⓘ
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> ⓘ
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