Expand description
Secret provider implementations.
This module provides a pluggable secret provider system with multiple backends for storing and retrieving secrets.
§Available Providers
KeychainProvider: Platform-native keychain (default)EnvironmentProvider: Environment variables (useful for CI/CD)FileProvider: File-based secrets
§Example
use skill_context::providers::{SecretProvider, KeychainProvider};
let provider = KeychainProvider::new();
// Store a secret
provider.set_secret("my-context", "api-key", "secret-value").await?;
// Retrieve a secret
if let Some(secret) = provider.get_secret("my-context", "api-key").await? {
println!("Got secret (length: {})", secret.len());
}Re-exports§
pub use env::EnvironmentProvider;pub use file::FileProvider;pub use keychain::KeychainProvider;
Modules§
- env
- Environment variable secret provider.
- file
- File-based secret provider.
- keychain
- Platform keychain secret provider.
Structs§
- Secret
Manager - Manager for routing secret operations to the appropriate provider.
Traits§
- Secret
Provider - Trait for secret providers.
Type Aliases§
- Secret
Value - A secret value that is automatically zeroed when dropped.