pub struct KvEngine;Expand description
Versioned static KV engine (kv-v2-style): every write creates a new
version, delete soft-deletes the current version without erasing
history, read always returns the latest non-deleted version.
Implementations§
Trait Implementations§
Source§impl SecretsEngine for KvEngine
impl SecretsEngine for KvEngine
Source§fn doc(&self) -> EngineDoc
fn doc(&self) -> EngineDoc
Self-documentation. Every engine must answer this — an engine that
cannot say what its credentials are worth has no business minting them.
fn read<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
storage: &'life1 dyn StorageBackend,
path: &'life2 str,
) -> Pin<Box<dyn Future<Output = EngineResult<Value>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn write<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
storage: &'life1 dyn StorageBackend,
path: &'life2 str,
data: Value,
) -> Pin<Box<dyn Future<Output = EngineResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn delete<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
storage: &'life1 dyn StorageBackend,
path: &'life2 str,
) -> Pin<Box<dyn Future<Output = EngineResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn list<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
storage: &'life1 dyn StorageBackend,
prefix: &'life2 str,
) -> Pin<Box<dyn Future<Output = EngineResult<Vec<String>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Source§fn generate<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_storage: &'life1 dyn StorageBackend,
_role: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<GeneratedCredential, EngineError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn generate<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_storage: &'life1 dyn StorageBackend,
_role: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<GeneratedCredential, EngineError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
Dynamic-secret engines (e.g. Postgres) override these; static
engines (e.g. KV) inherit the default
Unsupported.fn revoke<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_storage: &'life1 dyn StorageBackend,
_lease: &'life2 Lease,
) -> Pin<Box<dyn Future<Output = Result<(), EngineError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
Auto Trait Implementations§
impl Freeze for KvEngine
impl RefUnwindSafe for KvEngine
impl Send for KvEngine
impl Sync for KvEngine
impl Unpin for KvEngine
impl UnsafeUnpin for KvEngine
impl UnwindSafe for KvEngine
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