Condividi tramite


Transport Layer Security (TLS) nel database Azure per MySQL

Database di Azure per MySQL richiede che tutte le connessioni client usino Transport Layer Security (TLS), un protocollo standard del settore che crittografa le comunicazioni tra il server di database e le applicazioni client. TLS sostituisce il protocollo SSL precedente, con solo le versioni TLS 1.2 e 1.3 riconosciute come sicure. L'integrità della sicurezza TLS si basa su tre pilastri:

  • Uso solo di TLS versione 1.2 o 1.3.
  • Il client convalida il certificato TLS del server emesso da un'autorità di certificazione (CA) in una catena di CA avviate da una CA radice attendibile.
  • Negoziazione di una suite di crittografia sicura tra server e client.

Configurazioni TLS nel server flessibile di Database di Azure per MySQL

Database di Azure per MySQL server flessibile supporta la connessione delle applicazioni client all'istanza del server flessibile Database di Azure per MySQL tramite SSL (Secure Sockets Layer) con la crittografia TLS (Transport Layer Security). TLS è un protocollo standard del settore che garantisce connessioni di rete crittografate tra il server di database e le applicazioni client, consentendo di rispettare i requisiti di conformità.

Il server flessibile di Database di Azure per MySQL supporta le connessioni crittografate tramite Transport Layer Security (TLS 1.2) per impostazione predefinita e tutte le connessioni in ingresso con TLS 1.0 e TLS 1.1 vengono negate per impostazione predefinita. L'imposizione della connessione crittografata o la configurazione della versione TLS nel server flessibile può essere configurata e modificata.

Di seguito sono riportate le diverse configurazioni delle impostazioni SSL e TLS disponibili per il server flessibile:

Importante

In base alla rimozione del supporto per i protocolli TLS 1.0 e TLS 1.1, in precedenza era prevista la deprecazione completa di TLS 1.0 e 1.1 entro settembre 2024. Tuttavia, a causa delle dipendenze identificate da alcuni clienti, abbiamo deciso di estendere la sequenza temporale.

  • A partire dal 31 agosto 2025, è stato avviato l'aggiornamento forzato per tutti i server che usano ANCORA TLS 1.0 o 1.1. Dopo questa data, le connessioni che si basano su TLS 1.0 o 1.1 potrebbero smettere di funzionare in qualsiasi momento.

Per evitare interruzioni del servizio, è consigliabile che i clienti completino la migrazione a TLS 1.2 il prima possibile per evitare interruzioni del servizio.

Scenario Impostazioni dei parametri del server Description
Disabilitare l'applicazione di TLS require_secure_transport = OFF Se l'applicazione legacy non supporta le connessioni crittografate, è possibile disabilitare l'imposizione delle connessioni crittografate.
Applicare TLS con versione TLS < 1.2 (deprecato a settembre 2024) require_secure_transport = ON e tls_version = TLS 1.0 o TLS 1.1 Non più disponibile!
Applicare TLS con tls versione = 1.2(configurazione predefinita) require_secure_transport = ON e tls_version = TLS 1.2 Configurazione predefinita.
Applicare TLS con TLS versione = 1.3 require_secure_transport = ON e tls_version = TLS 1.3 Configurazione consigliata; supportato solo con il server flessibile di Database di Azure per MySQL versione 8.0 e successive.

Annotazioni

Le modifiche apportate alla crittografia TLS non sono supportate. Le suite di crittografia conformi a FIPS vengono applicate per impostazione predefinita quando tls_version è impostato su TLS 1.2 o TLS 1.3.

Vedere Connettersi con SSL/TLS per informazioni su come identificare la versione di TLS.

Certificati radice fidati e rotazione dei certificati

Importante

Database di Azure per MySQL ha avviato una rotazione dei certificati TLS per aggiornare i certificati CA intermedi e la catena di certificati risultante. Le autorità di certificazione radice rimangono invariate.

Se la configurazione client usa le configurazioni consigliate per TLS, non è necessario eseguire alcuna azione.

Pianificazione della rotazione dei certificati

  • Le aree di Azure Stati Uniti centro-occidentali, Asia orientale e Regno Unito meridionale hanno iniziato la rotazione dei certificati TLS il 11 novembre 2025.
  • Dal 19 gennaio 2026, questa rotazione dei certificati si estende alle regioni rimanenti (ad eccezione della Cina), tra cui Azure Government.
  • Dopo il Festival di Primavera (Capodanno cinese) del 2026, anche le regioni della Cina subiranno una rotazione dei certificati che include una modifica a una delle CA radice.

CA radici utilizzate dal database Azure per MySQL

L'autorità di certificazione radice è l'autorità di primo livello nella catena di certificazione. Database di Azure per MySQL attualmente usa certificati con firma doppia rilasciati da un'ICA ancorata dalle seguenti CA radice.

Attualmente le aree della Cina usano le ca seguenti:

Informazioni sulle CA intermedie

Database di Azure per MySQL usa autorità di certificazione intermedie (CA) per rilasciare certificati server. Microsoft ruota periodicamente questi ICA e i certificati del server che essi rilasciano per mantenere la sicurezza. Queste rotazioni sono routine e non annunciate in anticipo.

La rotazione corrente delle autorità di certificazione intermedie per DigiCert Global Root G2 (vedere Rotazione dei certificati) avviata nel novembre 2025 e pianificata per essere completata nel primo trimestre del 2026 sostituisce le CA intermedie come indicato di seguito. Se sono state seguite le procedure consigliate, questa modifica non richiede modifiche nell'ambiente.

Catena CA precedente

Queste informazioni vengono fornite solo per riferimento. Non utilizzare CA intermedie né certificati server nel proprio archivio radice attendibile.

  • DigiCert Global Root G2
    • Microsoft Azure RSA TLS Issuing CA 03 / 04 / 07 / 08
      • Certificato del server

Nuova catena di autorità di certificazione (CA)

Queste informazioni vengono fornite solo per riferimento. Non utilizzare CA intermedie né certificati server nel proprio archivio radice attendibile.

  • DigiCert Global Root G2
    • Microsoft TLS RSA Root G2
      • Microsoft TLS G2 RSA CA OCSP 02 / 04 / 06 / 08 / 10 / 12 / 14 / 16
        • Certificato del server

Catene di certificati

Una catena di certificati è una sequenza gerarchica di certificati rilasciati da autorità di certificazione attendibili (CA), a partire dalla CA radice, che rilascia certificati ICA (Intermediate CA). Le ICA possono emettere certificati per altre ICA di livello inferiore. L'ICA più bassa della catena rilascia singoli certificati server. La catena di attendibilità viene stabilita verificando ogni certificato nella catena fino al certificato CA radice.

Riduzione degli errori di connessione

L'uso delle configurazioni TLS consigliate consente di ridurre il rischio di errori di connessione dovuti alle rotazioni dei certificati o alle modifiche nelle ca intermedie. In particolare, evitare di considerare attendibili ca intermedie o singoli certificati server, in quanto queste procedure possono causare problemi di connessione imprevisti quando Microsoft aggiorna la catena di certificati.

Importante

Le modifiche apportate alle ca radice vengono annunciate in anticipo per preparare le applicazioni client; Tuttavia, le rotazioni dei certificati del server e le modifiche apportate alle ca intermedie sono routine e pertanto non annunciate.

Attenzione

L'uso di configurazioni non supportate (client) può causare errori di connessione imprevisti.

Configurazione ottimale

Configurazione ottimale

  • Impostare require_secure_transport = ON e tls_version = TLS 1.3. Se è necessario supportare TLS 1.2, non impostare il tls_version.
  • Usare la verifica completa dalle applicazioni client (questo varia in base al client).
  • Verificare che l'archivio radice attendibile contenga il certificato CA radice attualmente utilizzato da Database di Azure per MySQL:

Sconsigliamo vivamente di disabilitare completamente TLS impostando require_secure_transport su OFF.

Configurazioni non supportate; non usare

Azure MySQL non annuncia modifiche relative alle modifiche intermedie della CA o alle rotazioni dei singoli certificati del server; di conseguenza, le configurazioni seguenti non sono supportate:

  • Uso di certificati CA intermedi nell'archivio attendibile.
  • Uso dell'associazione dei certificati, ad esempio uso di certificati server singoli nell'archivio attendibile.

Attenzione

Le applicazioni non riescono a connettersi ai server di database senza alcun avviso ogni volta che Microsoft modifica le CA intermedie della catena di certificati o ruota il certificato server.

Altre considerazioni per TLS

Versioni TLS non sicure e sicure

Diverse entità governative a livello globale mantengono linee guida per TLS in materia di sicurezza di rete. Negli Stati Uniti, queste organizzazioni includono il Dipartimento della salute e dei servizi umani e l'Istituto nazionale di standard e tecnologia. Il livello di sicurezza fornito da TLS è più interessato dalla versione del protocollo TLS e dai pacchetti di crittografia supportati.

Database di Azure per MySQL supporta TLS versione 1.2 e 1.3. In RFC 8996, Internet Engineering Task Force (IETF) indica in modo esplicito che TLS 1.0 e TLS 1.1 non devono essere usati. Entrambi i protocolli sono stati deprecati entro la fine del 2019. Tutte le connessioni in ingresso che usano versioni non sicure precedenti del protocollo TLS, ad esempio TLS 1.0 e TLS 1.1, vengono negate per impostazione predefinita.

IETF ha rilasciato la specifica TLS 1.3 in RFC 8446 nell'agosto 2018 e TLS 1.3 è la versione consigliata perché è più veloce e più sicuro di TLS 1.2.

Anche se non è consigliabile, se necessario, è possibile disabilitare TLS per le connessioni al database di Azure per MySQL. È possibile aggiornare il parametro del server require_secure_transport a OFF.

Pacchetti di crittografia

Una suite di crittografia è un set di algoritmi che includono una crittografia, un algoritmo di scambio di chiavi e un algoritmo hash. Vengono usati insieme al certificato TLS e alla versione TLS per stabilire una connessione TLS sicura. La maggior parte dei client e dei server TLS supporta più suite di crittografia e talvolta più versioni TLS. Durante la creazione della connessione, il client e il server negoziano la versione e la suite di crittografia TLS da usare tramite un handshake. Durante questo handshake, si verifica quanto segue:

  • Il client invia un elenco di pacchetti di crittografia accettabili.
  • Il server seleziona la suite di crittografia migliore (in base alla propria definizione) dall'elenco e informa il client della scelta.

Funzionalità TLS non disponibili in Database di Azure per MySQL

Al momento, Database di Azure per MySQL non implementa le funzionalità TLS seguenti:

  • Autenticazione client basata su certificati TLS tramite TLS con autenticazione reciproca (mTLS).
  • Certificati server personalizzati (porta i tuoi certificati TLS).