pub struct CertAuthConfig {
pub enabled: bool,
pub trust_bundle: PathBuf,
pub identity_mode: CertIdentityMode,
pub role_oid: Option<String>,
pub default_role: Role,
pub map_to_existing_users: bool,
}Expand description
Per-deployment cert-auth policy. Enabled on a per-listener basis (the TLS listeners inject this into their accept loop).
Fields§
§enabled: boolWhether cert auth is active for this listener. When false the validator is skipped entirely.
trust_bundle: PathBufPath to a PEM file containing trusted CA certificates. Client certs must chain to one of these.
identity_mode: CertIdentityModeIdentity extraction mode.
role_oid: Option<String>Optional X.509 extension OID (dotted notation) that carries the
role string. When unset, default_role is used.
default_role: RoleRole assigned when the cert does not carry an explicit role.
map_to_existing_users: boolWhen true, a cert whose CN / email matches an existing RedDB
user maps to that user (and inherits the user’s stored role).
When false, the cert-derived role is always authoritative.
Trait Implementations§
Source§impl Clone for CertAuthConfig
impl Clone for CertAuthConfig
Source§fn clone(&self) -> CertAuthConfig
fn clone(&self) -> CertAuthConfig
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CertAuthConfig
impl Debug for CertAuthConfig
Auto Trait Implementations§
impl Freeze for CertAuthConfig
impl RefUnwindSafe for CertAuthConfig
impl Send for CertAuthConfig
impl Sync for CertAuthConfig
impl Unpin for CertAuthConfig
impl UnsafeUnpin for CertAuthConfig
impl UnwindSafe for CertAuthConfig
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> 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::Request