TLSOptions
Наследует: RefCounted < Object
Конфигурация TLS для клиентов и серверов.
Описание
TLSOptions абстрагирует параметры конфигурации для классов StreamPeerTLS и PacketPeerDTLS.
Объекты этого класса не могут быть созданы напрямую, и вместо этого следует использовать один из статических методов client(), client_unsafe() или server().
# Создаёт конфигурацию клиента TLS, которая использует нашу настраиваемую цепочку доверенных центров сертификации.
var client_trusted_cas = load("res://my_trusted_cas.crt")
var client_tls_options = TLSOptions.client(client_trusted_cas)
# Создаёт конфигурацию сервера TLS.
var server_certs = load("res://my_server_cas.crt")
var server_key = load("res://my_server_key.key")
var server_tls_options = TLSOptions.server(server_key, server_certs)
Методы
client(trusted_chain: X509Certificate = null, common_name_override: String = "") static |
|
client_unsafe(trusted_chain: X509Certificate = null) static |
|
get_common_name_override() const |
|
get_own_certificate() const |
|
get_private_key() const |
|
get_trusted_ca_chain() const |
|
is_server() const |
|
is_unsafe_client() const |
|
server(key: CryptoKey, certificate: X509Certificate) static |
Описания метода
TLSOptions client(trusted_chain: X509Certificate = null, common_name_override: String = "") static 🔗
Создает конфигурацию клиента TLS, которая проверяет сертификаты и их общие имена (полные доменные имена).
Вы можете указать пользовательский trusted_chain центров сертификации (список CA по умолчанию будет использоваться, если null), и дополнительно указать common_name_override, если вы ожидаете, что сертификат будет иметь общее имя, отличное от FQDN сервера.
Примечание: На веб-платформе проверка TLS всегда принудительно выполняется по списку CA веб-браузера. Это считается функцией безопасности.
TLSOptions client_unsafe(trusted_chain: X509Certificate = null) static 🔗
Создает небезопасную конфигурацию клиента TLS, в которой проверка сертификата необязательна. Вы можете дополнительно указать допустимый trusted_chain, но общее имя сертификатов никогда не будет проверяться. Использование этой конфигурации для целей, отличных от тестирования не рекомендуется.
Примечание: На веб-платформе проверка TLS всегда принудительно выполняется по списку CA веб-браузера. Это считается функцией безопасности.
String get_common_name_override() const 🔗
Возвращает переопределение общего имени (доменного имени), указанное при создании с помощью client().
X509Certificate get_own_certificate() const 🔗
Возвращает X509Certificate, указанный при создании с помощью server().
CryptoKey get_private_key() const 🔗
Возвращает CryptoKey, указанный при создании с помощью server().
X509Certificate get_trusted_ca_chain() const 🔗
Возвращает цепочку CA X509Certificate, указанную при создании с помощью client() или client_unsafe().
Возвращает true, если создано с помощью server(), в противном случае false.
bool is_unsafe_client() const 🔗
Возвращает true, если создано с помощью client_unsafe(), в противном случае false.
TLSOptions server(key: CryptoKey, certificate: X509Certificate) static 🔗
Создает конфигурацию сервера TLS с использованием предоставленных key и certificate.
Примечание: certificate должен включать полную цепочку сертификатов вплоть до подписывающего CA (файл сертификатов можно объединить с помощью текстового редактора общего назначения).