Connessione ivity and networking concepts for Database di Azure per MySQL - Flexible Server

SI APPLICA A: Database di Azure per MySQL - Server flessibile

Questo articolo presenta i concetti per controllare la connettività all'istanza del server flessibile Database di Azure per MySQL. Vengono illustrati in dettaglio i concetti di rete per Database di Azure per MySQL server flessibile per creare e accedere a un server in modo sicuro in Azure.

Database di Azure per MySQL server flessibile supporta tre modi per configurare la connettività ai server:

  • Accesso pubblico Il server flessibile è accessibile tramite un endpoint pubblico. L'endpoint pubblico è un indirizzo DNS risolvibile pubblicamente. L'espressione "indirizzi IP consentiti" si riferisce a un intervallo di indirizzi IP a cui si sceglie di concedere l'autorizzazione per l'accesso al server. Queste autorizzazioni si definiscono regole del firewall.

  • Endpoint privato È possibile usare endpoint privati per consentire agli host in una rete virtuale di retevirtuale di accedere in modo sicuro ai dati tramite un collegamento privato.

  • Accesso privato (integrazione rete virtuale) È possibile distribuire il server flessibile nell'Rete virtuale di Azure. Le reti virtuali di Azure forniscono comunicazioni private e sicure. Le risorse di una rete virtuale possono comunicare tramite indirizzi IP privati.

Nota

Dopo aver distribuito un server con accesso pubblico o privato (tramite integrazione rete virtuale), non è possibile modificare la modalità di connettività. In modalità di accesso pubblico, tuttavia, è possibile abilitare o disabilitare gli endpoint privati in base alle esigenze e disabilitare anche l'accesso pubblico, se necessario.

Scegliere un'opzione di rete

Scegliere Accesso pubblico (indirizzi IP consentiti) e Metodo endpoint privato se si desiderano le funzionalità seguenti:

  • Connessione dalle risorse di Azure senza supporto della rete virtuale
  • Connessione da risorse esterne ad Azure che non sono connesse tramite VPN o ExpressRoute
  • Il server flessibile è accessibile tramite un endpoint pubblico ed è accessibile tramite risorse Internet autorizzate. Se necessario, l'accesso pubblico può essere disabilitato.
  • Possibilità di configurare gli endpoint privati per accedere al server dagli host in una rete virtuale (VNet)

Scegliere Accesso privato (integrazione rete virtuale) se si desiderano le funzionalità seguenti:

  • Connessione al server flessibile dalle risorse di Azure all'interno della stessa rete virtuale o di una rete virtuale con peering senza la necessità di configurare un endpoint privato
  • Usare VPN o ExpressRoute per connettersi al server flessibile da risorse non di Azure
  • Nessun endpoint pubblico

Le caratteristiche seguenti si applicano se si sceglie di usare l'accesso privato o l'opzione di accesso pubblico:

  • Connessione da indirizzi IP consentiti devono eseguire l'autenticazione all'istanza del server flessibile Database di Azure per MySQL con credenziali valide
  • Connessione crittografia è disponibile per il traffico di rete
  • Il server ha un nome di dominio completo (fqdn). È consigliabile usare fqdn anziché un indirizzo IP per la proprietà nome host in stringa di connessione s.
  • Entrambe le opzioni controllano l'accesso a livello di server, non a livello di database o di tabella. È possibile usare le proprietà dei ruoli di MySQL per controllare l'accesso a database, tabelle e altri oggetti.

Scenari di rete virtuale non supportati

  • Endpoint pubblico (o indirizzo IP pubblico o DNS): un server flessibile distribuito in una rete virtuale non può avere un endpoint pubblico.
  • Dopo che il server flessibile è stato distribuito a una rete virtuale e una subnet, non è possibile spostarlo in un'altra rete virtuale o subnet.
  • Dopo la distribuzione del server flessibile, non è possibile spostare la rete virtuale usata dal server flessibile in un altro gruppo di risorse o in un'altra sottoscrizione.
  • Dopo la creazione di risorse non è possibile aumentare le dimensioni della subnet (spazi indirizzi).
  • La modifica dall'accesso pubblico a privato non è consentita dopo la creazione del server. Il modo consigliato consiste nell'usare il ripristino temporizzato.

Nota

Se si usa il server DNS personalizzato, è necessario usare un server d'inoltro DNS per risolvere il nome di dominio completo dell'istanza del server flessibile Database di Azure per MySQL. Per altre informazioni, vedere Risoluzione dei nomi che usa il server DNS.

Hostname (Nome host)

Indipendentemente dall'opzione di rete, è consigliabile usare il nome di dominio completo (FQDN) <servername>.mysql.database.azure.com nelle stringa di connessione durante la connessione all'istanza del server flessibile Database di Azure per MySQL. Non è garantito che l'indirizzo IP del server rimanga statico. L'uso del nome di dominio completo consente di evitare di apportare modifiche al stringa di connessione.

Un esempio che usa un FQDN come nome host è hostname = servername.mysql.database.azure.com. Se possibile, evitare di usare hostname = 10.0.0.4 (indirizzo privato) o nome host = 40.2.45.67 (indirizzo pubblico).

TLS e SSL

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 di settore che assicura connessioni di rete crittografate tra il server di database e le applicazioni client, consentendoti di rispettare i requisiti di conformità.

Database di Azure per MySQL server flessibile supporta connessioni crittografate con 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:

Scenario Impostazioni dei parametri del server Descrizione
Disabilitare SSL (connessioni crittografate) require_secure_transport = OFF Se l'applicazione legacy non supporta le connessioni crittografate all'istanza del server flessibile Database di Azure per MySQL, è possibile disabilitare l'imposizione delle connessioni crittografate al server flessibile impostando require_secure_transport=OFF.
Applicare SSL con TLS versione < 1.2 require_secure_transport = ON e tls_version = TLS 1.0 o TLS 1.1 Se l'applicazione legacy supporta connessioni crittografate ma richiede TLS versione < 1.2, è possibile abilitare le connessioni crittografate, ma configurare il server flessibile per consentire le connessioni con la versione TLS (v1.0 o v1.1) supportata dall'applicazione
Applicare SSL con TLS versione = 1.2(Configurazione predefinita) require_secure_transport = ON e tls_version = TLS 1.2 Si tratta della configurazione consigliata e predefinita per un server flessibile.
Applicare SSL con TLS versione = 1.3(Supportato con MySQL v8.0 e versioni successive) require_secure_transport = ON e tls_version = TLS 1.3 Questo è utile e consigliato per lo sviluppo di nuove applicazioni

Nota

Le modifiche apportate alla crittografia SSL nel server flessibile non sono supportate. I pacchetti di crittografia FIPS vengono applicati per impostazione predefinita quando tls_version è impostato su TLS versione 1.2. Per le versioni TLS diverse dalla versione 1.2, la crittografia SSL è impostata su impostazioni predefinite, che include l'installazione della community mySQL.

Per altre informazioni, vedere come connettersi con SSL/TLS .

Passaggi successivi