octavia.common.tls_utils package¶
Submodules¶
octavia.common.tls_utils.cert_parser module¶
-
build_pem
(tls_container)[source]¶ Concatenate TLS container fields to create a PEM
encoded certificate file
- Parameters
tls_container – Object container TLS certificates
- Returns
Pem encoded certificate file
-
get_cert_expiration
(certificate_pem)[source]¶ Extract the expiration date from the Pem encoded X509 certificate
- Parameters
certificate_pem – Certificate in PEM format
- Returns
Expiration date of certificate_pem
-
get_host_names
(certificate)[source]¶ Extract the host names from the Pem encoded X509 certificate
- Parameters
certificate – A PEM encoded certificate
- Returns
A dictionary containing the following keys: [‘cn’, ‘dns_names’] where ‘cn’ is the CN from the SubjectName of the certificate, and ‘dns_names’ is a list of dNSNames (possibly empty) from the SubjectAltNames of the certificate.
-
get_intermediates_pems
(intermediates=None)[source]¶ Split the input string into individual x509 text blocks
- Parameters
intermediates – PEM or PKCS7 encoded intermediate certificates
- Returns
A list of strings where each string represents an X509 pem block surrounded by BEGIN CERTIFICATE, END CERTIFICATE block tags
-
load_certificates_data
(cert_mngr, obj, context=None)[source]¶ Load TLS certificate data from the listener/pool.
return TLS_CERT and SNI_CERTS
-
prepare_private_key
(private_key, passphrase=None)[source]¶ Prepares an unencrypted PEM-encoded private key for printing
- Parameters
private_key – The private key in PEM format (encrypted or not)
- Returns
The unencrypted private key in PEM format
-
validate_cert
(certificate, private_key=None, private_key_passphrase=None, intermediates=None)[source]¶ Validate that the certificate is a valid PEM encoded X509 object
Optionally verify that the private key matches the certificate. Optionally verify that the intermediates are valid X509 objects.
- Parameters
certificate – A PEM encoded certificate
private_key – The private key for the certificate
private_key_passphrase – Passphrase for accessing the private key
intermediates – PEM or PKCS7 encoded intermediate certificates
- Returns
boolean