pub struct VaultTransit { /* private fields */ }Expand description
Vault’s transit engine, reached over HTTP.
Debug derives safely because the only credential — the Vault token — is a
Secret, which redacts itself and zeroizes on drop. A bare String here
would print verbatim, and VaultTransit is reachable through the derived
Debug of Runtime, StepCtx and RuntimeBuilder, so one tracing::debug!
would put the token in a log — the exact hole every other credential holder
in this crate hand-redacts against.
Implementations§
Trait Implementations§
Source§impl Clone for VaultTransit
impl Clone for VaultTransit
Source§impl Debug for VaultTransit
impl Debug for VaultTransit
Source§impl KeyRing for VaultTransit
impl KeyRing for VaultTransit
Source§fn destroy<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
scope: &'life1 str,
_at: Timestamp,
_reason: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<(), KeyError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn destroy<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
scope: &'life1 str,
_at: Timestamp,
_reason: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<(), KeyError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Deletes the transit key. at and reason are not sent: transit keeps
no record of why a key went, so they live in the erasure record the
caller wrote before calling this
(CaseStore::begin_erasure
for a case).
Source§fn data_key<'life0, 'life1, 'async_trait>(
&'life0 self,
scope: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(DataKey, WrappedKey), KeyError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn data_key<'life0, 'life1, 'async_trait>(
&'life0 self,
scope: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(DataKey, WrappedKey), KeyError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Mint a fresh data key, wrapped under the scope’s key. Read more
Auto Trait Implementations§
impl !RefUnwindSafe for VaultTransit
impl !UnwindSafe for VaultTransit
impl Freeze for VaultTransit
impl Send for VaultTransit
impl Sync for VaultTransit
impl Unpin for VaultTransit
impl UnsafeUnpin for VaultTransit
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
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,
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> 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 moreCreates a shared type from an unshared type.