pub trait SecretProvider: Send + Sync {
// Required method
fn get_secret(&self, key: &str) -> Result<Option<String>, Error>;
}Expand description
Resolve secret material by key at runtime.
Implement this in a host crate (Vault, cloud KMS, …). Never embed product-specific
secret clients inside valence-core.
Wire with crate::ValenceBuilder::secret_provider.
§Examples
use valence_core::{EnvSecretProvider, SecretProvider};
let provider = EnvSecretProvider;
// Looks up `std::env::var("MY_API_KEY")` when present.
let _ = provider.get_secret("MY_API_KEY");Required Methods§
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".