pub enum Store {
System,
File {
path: String,
},
Cert {
certs: Vec<String>,
},
}
Available on crate feature
config
only.Expand description
SSL configuration object for store certificates
Variants§
System
Will use the system trusted certificates
File
Store path that contain certificate(s)
Cert
Store certs that contain PEMs
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Store
impl<'de> Deserialize<'de> for Store
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl SslStore<X509, X509Store> for Store
Available on crate feature config-openssl
only.
impl SslStore<X509, X509Store> for Store
Available on crate feature
config-openssl
only.Source§fn get_store(&self) -> Result<X509Store, ConfigError>
fn get_store(&self) -> Result<X509Store, ConfigError>
Method to get an OpenSSL cert store
use prosa_utils::config::ssl::{Store, SslStore};
let store = Store::File { path: "./target".into() };
let openssl_store: openssl::x509::store::X509Store = store.get_store().unwrap();
Source§fn get_certs(&self) -> Result<HashMap<String, X509>, ConfigError>
fn get_certs(&self) -> Result<HashMap<String, X509>, ConfigError>
Method to get all OpenSSL certificate with their names as key
use std::collections::HashMap;
use openssl::x509::X509;
use prosa_utils::config::ssl::{Store, SslStore};
let store = Store::File { path: "./target".into() };
let certs_map: HashMap<String, X509> = store.get_certs().unwrap();
// No cert in target
assert!(certs_map.is_empty());
Source§fn get_file_certificates(path: &Path) -> Result<Vec<X509>, ConfigError>
fn get_file_certificates(path: &Path) -> Result<Vec<X509>, ConfigError>
Method to read certificates from its path. Get all certificates in subfolders
impl StructuralPartialEq for Store
Auto Trait Implementations§
impl Freeze for Store
impl RefUnwindSafe for Store
impl Send for Store
impl Sync for Store
impl Unpin for Store
impl UnwindSafe for Store
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string
, but without panic on OOM.