pub struct RefreshableClientCertVerifier { /* private fields */ }Expand description
Listener-side wrapper that defers to a WebPkiClientVerifier
rebuilt only when the cached CRL snapshot’s Arc identity changes,
against the latest CRL bytes pulled from the cache.
Implementations§
Source§impl RefreshableClientCertVerifier
impl RefreshableClientCertVerifier
pub fn new( cache: Arc<CrlCache>, sources: Vec<CrlSourceId>, cas: Arc<RootCertStore>, allow_unauthenticated: bool, ) -> Arc<Self>
Trait Implementations§
Source§impl ClientCertVerifier for RefreshableClientCertVerifier
impl ClientCertVerifier for RefreshableClientCertVerifier
Source§fn offer_client_auth(&self) -> bool
fn offer_client_auth(&self) -> bool
Returns
true to enable the server to request a client certificate and
false to skip requesting a client certificate. Defaults to true.Source§fn client_auth_mandatory(&self) -> bool
fn client_auth_mandatory(&self) -> bool
Return
true to require a client certificate and false to make
client authentication optional.
Defaults to self.offer_client_auth().Source§fn root_hint_subjects(&self) -> &[DistinguishedName]
fn root_hint_subjects(&self) -> &[DistinguishedName]
Returns the
DistinguishedName subjects that the server will hint to clients to
identify acceptable authentication trust anchors. Read moreSource§fn verify_client_cert(
&self,
end_entity: &CertificateDer<'_>,
intermediates: &[CertificateDer<'_>],
now: UnixTime,
) -> Result<ClientCertVerified, Error>
fn verify_client_cert( &self, end_entity: &CertificateDer<'_>, intermediates: &[CertificateDer<'_>], now: UnixTime, ) -> Result<ClientCertVerified, Error>
Verify the end-entity certificate
end_entity is valid, acceptable,
and chains to at least one of the trust anchors trusted by
this verifier. Read moreSource§fn verify_tls12_signature(
&self,
message: &[u8],
cert: &CertificateDer<'_>,
dss: &DigitallySignedStruct,
) -> Result<HandshakeSignatureValid, Error>
fn verify_tls12_signature( &self, message: &[u8], cert: &CertificateDer<'_>, dss: &DigitallySignedStruct, ) -> Result<HandshakeSignatureValid, Error>
Verify a signature allegedly by the given client certificate. Read more
Source§fn verify_tls13_signature(
&self,
message: &[u8],
cert: &CertificateDer<'_>,
dss: &DigitallySignedStruct,
) -> Result<HandshakeSignatureValid, Error>
fn verify_tls13_signature( &self, message: &[u8], cert: &CertificateDer<'_>, dss: &DigitallySignedStruct, ) -> Result<HandshakeSignatureValid, Error>
Verify a signature allegedly by the given client certificate. Read more
Source§fn supported_verify_schemes(&self) -> Vec<SignatureScheme>
fn supported_verify_schemes(&self) -> Vec<SignatureScheme>
Return the list of SignatureSchemes that this verifier will handle,
in
verify_tls12_signature and verify_tls13_signature calls. Read moreSource§fn requires_raw_public_keys(&self) -> bool
fn requires_raw_public_keys(&self) -> bool
Returns whether this verifier requires raw public keys as defined
in RFC 7250.
Auto Trait Implementations§
impl !Freeze for RefreshableClientCertVerifier
impl !RefUnwindSafe for RefreshableClientCertVerifier
impl Send for RefreshableClientCertVerifier
impl Sync for RefreshableClientCertVerifier
impl Unpin for RefreshableClientCertVerifier
impl UnsafeUnpin for RefreshableClientCertVerifier
impl !UnwindSafe for RefreshableClientCertVerifier
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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