pyhanko_certvalidator.fetchers.requests_fetchers package
Submodules
pyhanko_certvalidator.fetchers.requests_fetchers.cert_fetch_client module
- class pyhanko_certvalidator.fetchers.requests_fetchers.cert_fetch_client.RequestsCertificateFetcher(user_agent=None, per_request_timeout=10, permit_pem=True)
Bases:
CertificateFetcher
,RequestsFetcherMixin
Implementation of async CertificateFetcher API using requests, for backwards compatibility. This class does not require resource management.
- async fetch_certs(url, url_origin_type)
Fetch one or more certificates from a URL.
- Parameters:
url – URL to fetch.
url_origin_type – Parameter indicating where the URL came from (e.g. ‘CRL’), for error reporting purposes.
- Raises:
CertificateFetchError - when a network I/O or decoding error occurs
- Returns:
An iterable of asn1crypto.x509.Certificate objects.
- fetch_cert_issuers(cert: Certificate | AttributeCertificateV2)
Fetches certificates from the authority information access extension of a certificate.
- Parameters:
cert – A certificate
- Raises:
CertificateFetchError - when a network I/O or decoding error occurs
- Returns:
An asynchronous generator yielding asn1crypto.x509.Certificate objects that were fetched.
- fetch_crl_issuers(certificate_list)
Fetches certificates from the authority information access extension of an asn1crypto.crl.CertificateList.
- Parameters:
certificate_list – An asn1crypto.crl.CertificateList object
- Raises:
CertificateFetchError - when a network I/O or decoding error occurs
- Returns:
An asynchronous generator yielding asn1crypto.x509.Certificate objects that were fetched.
- fetched_certs() Iterable[Certificate]
Return all certificates retrieved by this certificate fetcher.
pyhanko_certvalidator.fetchers.requests_fetchers.crl_client module
- class pyhanko_certvalidator.fetchers.requests_fetchers.crl_client.RequestsCRLFetcher(*args, **kwargs)
Bases:
CRLFetcher
,RequestsFetcherMixin
- async fetch(cert: Certificate | AttributeCertificateV2, *, use_deltas=True)
Fetches the CRLs for a certificate.
- Parameters:
cert – An asn1crypto.x509.Certificate object to get the CRL for
use_deltas – A boolean indicating if delta CRLs should be fetched
- Raises:
CRLFetchError - when a network/IO error or decoding error occurs
- Returns:
An iterable of CRLs fetched.
- fetched_crls() Iterable[CertificateList]
Return all CRLs fetched by this CRL fetcher.
- fetched_crls_for_cert(cert) Iterable[CertificateList]
Return all relevant fetched CRLs for the given certificate
- Parameters:
cert – A certificate.
- Returns:
An iterable of CRLs
- Raises:
KeyError – if no fetch operations have been performed for this certificate
pyhanko_certvalidator.fetchers.requests_fetchers.ocsp_client module
- class pyhanko_certvalidator.fetchers.requests_fetchers.ocsp_client.RequestsOCSPFetcher(user_agent=None, per_request_timeout=10, certid_hash_algo='sha1', request_nonces=True)
Bases:
OCSPFetcher
,RequestsFetcherMixin
- async fetch(cert: Certificate | AttributeCertificateV2, authority: Authority) OCSPResponse
Fetch an OCSP response for a certificate.
- Parameters:
cert – The certificate for which an OCSP response has to be fetched.
authority – The issuing authority.
- Raises:
OCSPFetchError - Raised if an OCSP response could not be obtained.
- Returns:
An OCSP response.
- fetched_responses() Iterable[OCSPResponse]
Return all responses fetched by this OCSP fetcher.
- fetched_responses_for_cert(cert: Certificate | AttributeCertificateV2) Iterable[OCSPResponse]
Return all responses fetched by this OCSP fetcher that are relevant to determine the revocation status of the given certificate.
pyhanko_certvalidator.fetchers.requests_fetchers.util module
Module contents
Fetcher implementation using the requests
library for backwards
compatibility. This fetcher backend doesn’t take advantage of asyncio, but
has the advantage of not requiring any resource management on the caller’s part.
- class pyhanko_certvalidator.fetchers.requests_fetchers.RequestsFetcherBackend(per_request_timeout=10)
Bases:
FetcherBackend
- async close()
Clean up the resources associated with this fetcher backend, asynchronously.