vector/config/
secret.rs

1use std::collections::{HashMap, HashSet};
2
3use enum_dispatch::enum_dispatch;
4use vector_lib::configurable::NamedComponent;
5
6use crate::signal;
7
8/// Generalized interface to a secret backend.
9#[enum_dispatch]
10pub trait SecretBackend: NamedComponent + core::fmt::Debug + Send + Sync {
11    async fn retrieve(
12        &mut self,
13        secret_keys: HashSet<String>,
14        signal_rx: &mut signal::SignalRx,
15    ) -> crate::Result<HashMap<String, String>>;
16}