Home Assistant Unofficial Reference 2024.12.1
homeassistant.util.ssl Namespace Reference

Classes

class  SSLCipherList
 

Functions

ssl.SSLContext _client_context (SSLCipherList ssl_cipher_list=SSLCipherList.PYTHON_DEFAULT)
 
ssl.SSLContext _client_context_no_verify (SSLCipherList ssl_cipher_list)
 
ssl.SSLContext client_context (SSLCipherList ssl_cipher_list=SSLCipherList.PYTHON_DEFAULT)
 
ssl.SSLContext client_context_no_verify (SSLCipherList ssl_cipher_list=SSLCipherList.PYTHON_DEFAULT)
 
ssl.SSLContext create_no_verify_ssl_context (SSLCipherList ssl_cipher_list=SSLCipherList.PYTHON_DEFAULT)
 
ssl.SSLContext get_default_context ()
 
ssl.SSLContext get_default_no_verify_context ()
 
ssl.SSLContext server_context_intermediate ()
 
ssl.SSLContext server_context_modern ()
 

Variables

ssl.SSLContext _DEFAULT_NO_VERIFY_SSL_CONTEXT = _client_context_no_verify(SSLCipherList.PYTHON_DEFAULT)
 
ssl.SSLContext _DEFAULT_SSL_CONTEXT = _client_context(SSLCipherList.PYTHON_DEFAULT)
 
dictionary _NO_VERIFY_SSL_CONTEXTS
 
dictionary _SSL_CONTEXTS
 
dictionary SSL_CIPHER_LISTS
 

Detailed Description

Helper to create SSL contexts.

Function Documentation

◆ _client_context()

ssl.SSLContext homeassistant.util.ssl._client_context ( SSLCipherList   ssl_cipher_list = SSLCipherList.PYTHON_DEFAULT)
private

Definition at line 86 of file ssl.py.

◆ _client_context_no_verify()

ssl.SSLContext homeassistant.util.ssl._client_context_no_verify ( SSLCipherList  ssl_cipher_list)
private

Definition at line 67 of file ssl.py.

◆ client_context()

ssl.SSLContext homeassistant.util.ssl.client_context ( SSLCipherList   ssl_cipher_list = SSLCipherList.PYTHON_DEFAULT)
Return an SSL context for making requests.

Definition at line 135 of file ssl.py.

◆ client_context_no_verify()

ssl.SSLContext homeassistant.util.ssl.client_context_no_verify ( SSLCipherList   ssl_cipher_list = SSLCipherList.PYTHON_DEFAULT)
Return a SSL context with no verification with a specific ssl cipher.

Definition at line 128 of file ssl.py.

◆ create_no_verify_ssl_context()

ssl.SSLContext homeassistant.util.ssl.create_no_verify_ssl_context ( SSLCipherList   ssl_cipher_list = SSLCipherList.PYTHON_DEFAULT)
Return an SSL context that does not verify the server certificate.

Definition at line 142 of file ssl.py.

◆ get_default_context()

ssl.SSLContext homeassistant.util.ssl.get_default_context ( )
Return the default SSL context.

Definition at line 118 of file ssl.py.

◆ get_default_no_verify_context()

ssl.SSLContext homeassistant.util.ssl.get_default_no_verify_context ( )
Return the default SSL context that does not verify the server certificate.

Definition at line 123 of file ssl.py.

◆ server_context_intermediate()

ssl.SSLContext homeassistant.util.ssl.server_context_intermediate ( )
Return an SSL context following the Mozilla recommendations.

TLS configuration follows the best-practice guidelines specified here:
https://wiki.mozilla.org/Security/Server_Side_TLS
Intermediate guidelines are followed.

Definition at line 168 of file ssl.py.

◆ server_context_modern()

ssl.SSLContext homeassistant.util.ssl.server_context_modern ( )
Return an SSL context following the Mozilla recommendations.

TLS configuration follows the best-practice guidelines specified here:
https://wiki.mozilla.org/Security/Server_Side_TLS
Modern guidelines are followed.

Definition at line 149 of file ssl.py.

Variable Documentation

◆ _DEFAULT_NO_VERIFY_SSL_CONTEXT

ssl.SSLContext homeassistant.util.ssl._DEFAULT_NO_VERIFY_SSL_CONTEXT = _client_context_no_verify(SSLCipherList.PYTHON_DEFAULT)
private

Definition at line 105 of file ssl.py.

◆ _DEFAULT_SSL_CONTEXT

ssl.SSLContext homeassistant.util.ssl._DEFAULT_SSL_CONTEXT = _client_context(SSLCipherList.PYTHON_DEFAULT)
private

Definition at line 104 of file ssl.py.

◆ _NO_VERIFY_SSL_CONTEXTS

dictionary homeassistant.util.ssl._NO_VERIFY_SSL_CONTEXTS
private
Initial value:
1 = {
2  SSLCipherList.INTERMEDIATE: _client_context_no_verify(SSLCipherList.INTERMEDIATE),
3  SSLCipherList.MODERN: _client_context_no_verify(SSLCipherList.MODERN),
4  SSLCipherList.INSECURE: _client_context_no_verify(SSLCipherList.INSECURE),
5 }
ssl.SSLContext _client_context_no_verify(SSLCipherList ssl_cipher_list)
Definition: ssl.py:67

Definition at line 106 of file ssl.py.

◆ _SSL_CONTEXTS

dictionary homeassistant.util.ssl._SSL_CONTEXTS
private
Initial value:
1 = {
2  SSLCipherList.INTERMEDIATE: _client_context(SSLCipherList.INTERMEDIATE),
3  SSLCipherList.MODERN: _client_context(SSLCipherList.MODERN),
4  SSLCipherList.INSECURE: _client_context(SSLCipherList.INSECURE),
5 }
ssl.SSLContext _client_context(SSLCipherList ssl_cipher_list=SSLCipherList.PYTHON_DEFAULT)
Definition: ssl.py:88

Definition at line 111 of file ssl.py.

◆ SSL_CIPHER_LISTS

dictionary homeassistant.util.ssl.SSL_CIPHER_LISTS

Definition at line 21 of file ssl.py.