pub struct TlsConfig {
pub cert_path: PathBuf,
pub key_path: PathBuf,
pub client_ca_path: Option<PathBuf>,
}Available on crate feature
router-grpc only.Expand description
TLS configuration for gRPC servers
Fields§
§cert_path: PathBufPath to the server certificate file (PEM format)
key_path: PathBufPath to the server private key file (PEM format)
client_ca_path: Option<PathBuf>Optional path to client CA certificate for mTLS
Implementations§
Source§impl TlsConfig
impl TlsConfig
Sourcepub fn new(cert_path: impl Into<PathBuf>, key_path: impl Into<PathBuf>) -> Self
pub fn new(cert_path: impl Into<PathBuf>, key_path: impl Into<PathBuf>) -> Self
Create a new TLS configuration
Sourcepub fn with_client_ca(self, client_ca_path: impl Into<PathBuf>) -> Self
pub fn with_client_ca(self, client_ca_path: impl Into<PathBuf>) -> Self
Enable mutual TLS (mTLS) with a client CA certificate
Sourcepub fn from_env() -> Option<Self>
pub fn from_env() -> Option<Self>
Create TLS configuration from environment variables
Reads from:
GRPC_TLS_CERTorTLS_CERT_PATH- Certificate pathGRPC_TLS_KEYorTLS_KEY_PATH- Key pathGRPC_TLS_CLIENT_CAorTLS_CLIENT_CA_PATH- Optional client CA path
Trait Implementations§
Auto Trait Implementations§
impl Freeze for TlsConfig
impl RefUnwindSafe for TlsConfig
impl Send for TlsConfig
impl Sync for TlsConfig
impl Unpin for TlsConfig
impl UnwindSafe for TlsConfig
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§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::RequestSource§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