TLSOptions
Hereda: RefCounted < Object
Configuración TLS para clientes y servidores.
Descripción
TLSOptions abstrae las opciones de configuración para las clases StreamPeerTLS y PacketPeerDTLS.
Los objetos de esta clase no se pueden instanciar directamente, y en su lugar se debe utilizar uno de los métodos estáticos client(), client_unsafe() o server().
# Crea una configuración de cliente TLS que usa nuestra cadena CA de confianza personalizada.
var client_trusted_cas = load("res://my_trusted_cas.crt")
var client_tls_options = TLSOptions.client(client_trusted_cas)
# Crea una configuración de servidor 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)
Métodos
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 |
Descripciones de Métodos
TLSOptions client(trusted_chain: X509Certificate = null, common_name_override: String = "") static 🔗
Crea una configuración de cliente TLS que valida los certificados y sus nombres comunes (nombres de dominio completos).
Puedes especificar una trusted_chain personalizada de autoridades de certificación ( la lista de CA por defecto se usará si null), y opcionalmente proporcionar un common_name_override si esperas que el certificado tenga un nombre común diferente al FQDN del servidor.
Nota: En la plataforma Web, la verificación TLS siempre se aplica contra la lista de CA del navegador web. Esto se considera una característica de seguridad.
TLSOptions client_unsafe(trusted_chain: X509Certificate = null) static 🔗
Crea una configuración de cliente TLS insegura donde la validación del certificado es opcional. Opcionalmente puedes proporcionar un trusted_chain válido, pero el nombre común de los certificados nunca será comprobado. El uso de esta configuración para fines distintos de las pruebas no es recomendable.
Nota: En la plataforma Web, la verificación TLS siempre se aplica contra la lista de CA del navegador web. Esto se considera una característica de seguridad.
String get_common_name_override() const 🔗
Devuelve el nombre común (nombre de dominio) que se especificó al crear con client().
X509Certificate get_own_certificate() const 🔗
Devuelve el X509Certificate especificado al crear con server().
CryptoKey get_private_key() const 🔗
Devuelve la CryptoKey especificada al crear con server().
X509Certificate get_trusted_ca_chain() const 🔗
Devuelve la cadena CA X509Certificate especificada al crear con client() o client_unsafe().
Devuelve true si se crea con server(), false en caso contrario.
bool is_unsafe_client() const 🔗
Devuelve true si se crea con client_unsafe(), false en caso contrario.
TLSOptions server(key: CryptoKey, certificate: X509Certificate) static 🔗
Crea una configuración de servidor TLS utilizando la key y el certificate proporcionados.
Nota: El certificate debe incluir la cadena de certificados completa hasta la CA firmante (el archivo de certificados se puede concatenar utilizando un editor de texto de propósito general).