Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

TLSOptions

Eredita: RefCounted < Object

Configurazione TLS per client e server.

Descrizione

TLSOptions astrae le opzioni di configurazione per le classi StreamPeerTLS e PacketPeerDTLS.

Gli oggetti di questa classe non possono essere istanziati direttamente e al loro posto deve essere utilizzato uno dei metodi statici client(), client_unsafe() o server().

# Crea una configurazione per un client TLS che usa la nostra catena personalizzata di CA attendibili.
var client_trusted_cas = load("res://my_trusted_cas.crt")
var client_tls_options = TLSOptions.client(client_trusted_cas)

# Crea una configurazione per un server 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)

Metodi

TLSOptions

client(trusted_chain: X509Certificate = null, common_name_override: String = "") static

TLSOptions

client_unsafe(trusted_chain: X509Certificate = null) static

String

get_common_name_override() const

X509Certificate

get_own_certificate() const

CryptoKey

get_private_key() const

X509Certificate

get_trusted_ca_chain() const

bool

is_server() const

bool

is_unsafe_client() const

TLSOptions

server(key: CryptoKey, certificate: X509Certificate) static


Descrizioni dei metodi

TLSOptions client(trusted_chain: X509Certificate = null, common_name_override: String = "") static 🔗

Crea una configurazione per un client TLS che convalida i certificati e i loro nomi comuni (nomi di dominio completamente qualificati).

È possibile specificare una serie affidabile personalizzata di autorità di certificazione (trusted_chain) (sarà utilizzato la lista di CA predefinita se null) e, facoltativamente, fornire una sostituzione per il nome comune (common_name_override) se si prevede che il certificato abbia un nome comune diverso dal FQDN del server.

Nota: Sulla piattaforma Web, la verifica TLS viene sempre applicata alla lista di CA del browser Web. Questa è considerata una funzionalità di sicurezza.


TLSOptions client_unsafe(trusted_chain: X509Certificate = null) static 🔗

Crea una configurazione non sicura per un client TLS in cui la convalida del certificato è facoltativa. È possibile fornire una serie affidabile valida (trusted_chain), ma il nome comune dei certificati non verrà mai controllato. Usare questa configurazione al di fuori dei test non è consigliato.

Nota: Sulla piattaforma Web, la verifica TLS è sempre applicata alla lista di CA del browser Web. Questa è considerata una funzionalità di sicurezza.


String get_common_name_override() const 🔗

Restituisce la sostituzione del nome comune (nome di dominio) specificato dalla creazione tramite client().


X509Certificate get_own_certificate() const 🔗

Restituisce il X509Certificate specificato durante la creazione con server().


CryptoKey get_private_key() const 🔗

Restituisce il CryptoKey specificato durante la creazione con server().


X509Certificate get_trusted_ca_chain() const 🔗

Restituisce la catena X509Certificate CA specificata durante la creazione con client() o client_unsafe().


bool is_server() const 🔗

Restituisce true se creato con server(), altrimenti false.


bool is_unsafe_client() const 🔗

Restituisce true se creato con client_unsafe(), altrimenti false.


TLSOptions server(key: CryptoKey, certificate: X509Certificate) static 🔗

Crea una configurazione del server TLS utilizzando la chiave key e il certificato certificate forniti.

Nota: certificate dovrebbe includere l'intera catena di certificati fino alla CA firmataria (il file dei certificati può essere concatenato utilizzando un editor di testo generico).