pub trait SecretsPort: Send + Sync {
// Required methods
fn resolve(
&self,
binding: &SecretBinding,
action_id: &str,
) -> Result<Zeroizing<Vec<u8>>, String>;
fn store(
&self,
binding: &SecretBinding,
action_id: &str,
value: &[u8],
allow_overwrite: bool,
) -> Result<String, String>;
fn delete(
&self,
binding: &SecretBinding,
action_id: &str,
) -> Result<String, String>;
}Expand description
Resolve/store/delete through the external secret executable for one action.
Implementations must not read ambient secret repositories or return values except for the supplied action identity.