Skip to main content

SecretsBackend

Trait SecretsBackend 

Source
pub trait SecretsBackend: Send + Sync {
    // Required methods
    fn put(&self, record: SecretRecord) -> Result<SecretVersion, Error>;
    fn get(
        &self,
        uri: &SecretUri,
        version: Option<u64>,
    ) -> Result<Option<VersionedSecret>, Error>;
    fn list(
        &self,
        scope: &Scope,
        category_prefix: Option<&str>,
        name_prefix: Option<&str>,
    ) -> Result<Vec<SecretListItem>, Error>;
    fn delete(&self, uri: &SecretUri) -> Result<SecretVersion, Error>;
    fn versions(&self, uri: &SecretUri) -> Result<Vec<SecretVersion>, Error>;
    fn exists(&self, uri: &SecretUri) -> Result<bool, Error>;
}
Expand description

Storage interface implemented by provider backends.

Required Methods§

Source

fn put(&self, record: SecretRecord) -> Result<SecretVersion, Error>

Source

fn get( &self, uri: &SecretUri, version: Option<u64>, ) -> Result<Option<VersionedSecret>, Error>

Source

fn list( &self, scope: &Scope, category_prefix: Option<&str>, name_prefix: Option<&str>, ) -> Result<Vec<SecretListItem>, Error>

Source

fn delete(&self, uri: &SecretUri) -> Result<SecretVersion, Error>

Source

fn versions(&self, uri: &SecretUri) -> Result<Vec<SecretVersion>, Error>

Source

fn exists(&self, uri: &SecretUri) -> Result<bool, Error>

Implementations on Foreign Types§

Source§

impl SecretsBackend for DevBackend

Source§

fn put(&self, record: SecretRecord) -> Result<SecretVersion, Error>

Source§

fn get( &self, uri: &SecretUri, version: Option<u64>, ) -> Result<Option<VersionedSecret>, Error>

Source§

fn list( &self, scope: &Scope, category_prefix: Option<&str>, name_prefix: Option<&str>, ) -> Result<Vec<SecretListItem>, Error>

Source§

fn delete(&self, uri: &SecretUri) -> Result<SecretVersion, Error>

Source§

fn versions(&self, uri: &SecretUri) -> Result<Vec<SecretVersion>, Error>

Source§

fn exists(&self, uri: &SecretUri) -> Result<bool, Error>

Source§

impl<T> SecretsBackend for Box<T>
where T: SecretsBackend + ?Sized,

Source§

fn put(&self, record: SecretRecord) -> Result<SecretVersion, Error>

Source§

fn get( &self, uri: &SecretUri, version: Option<u64>, ) -> Result<Option<VersionedSecret>, Error>

Source§

fn list( &self, scope: &Scope, category_prefix: Option<&str>, name_prefix: Option<&str>, ) -> Result<Vec<SecretListItem>, Error>

Source§

fn delete(&self, uri: &SecretUri) -> Result<SecretVersion, Error>

Source§

fn versions(&self, uri: &SecretUri) -> Result<Vec<SecretVersion>, Error>

Source§

fn exists(&self, uri: &SecretUri) -> Result<bool, Error>

Source§

impl<T> SecretsBackend for Arc<T>
where T: SecretsBackend + ?Sized,

Available on crate feature std only.
Source§

fn put(&self, record: SecretRecord) -> Result<SecretVersion, Error>

Source§

fn get( &self, uri: &SecretUri, version: Option<u64>, ) -> Result<Option<VersionedSecret>, Error>

Source§

fn list( &self, scope: &Scope, category_prefix: Option<&str>, name_prefix: Option<&str>, ) -> Result<Vec<SecretListItem>, Error>

Source§

fn delete(&self, uri: &SecretUri) -> Result<SecretVersion, Error>

Source§

fn versions(&self, uri: &SecretUri) -> Result<Vec<SecretVersion>, Error>

Source§

fn exists(&self, uri: &SecretUri) -> Result<bool, Error>

Implementors§