Usare gli endpoint e le regole di servizio di rete virtuale per Database di Azure per MariaDBUse Virtual Network service endpoints and rules for Azure Database for MariaDB

Le regole di rete virtuale rappresentano una funzionalità di sicurezza del firewall che consente di definire se il server di Database di Azure per MariaDB accetta le comunicazioni inviate da subnet specifiche nelle reti virtuali.Virtual network rules are one firewall security feature that controls whether your Azure Database for MariaDB server accepts communications that are sent from particular subnets in virtual networks. Questo articolo spiega i motivi per cui la funzione delle regole di rete virtuale è talvolta la scelta ideale per consentire le comunicazioni con il server di Database di Azure per MariaDB.This article explains why the virtual network rule feature is sometimes your best option for securely allowing communication to your Azure Database for MariaDB server.

Per creare una regola di rete virtuale, devono innanzitutto essere disponibili una rete virtuale (VNet) e un endpoint di servizio di rete virtuale a cui la regola possa fare riferimento.To create a virtual network rule, there must first be a virtual network (VNet) and a virtual network service endpoint for the rule to reference. La figura seguente illustra il funzionamento di un endpoint di servizio di rete virtuale con Database di Azure per MariaDB:The following picture illustrates how a Virtual Network service endpoint works with Azure Database for MariaDB:

Esempio del funzionamento di un endpoint di servizio di rete virtuale

Nota

Questa funzionalità è disponibile in tutte le aree di Azure in cui Database di Azure per MariaDB viene distribuito nei server per utilizzo generico e ottimizzati per la memoria.This feature is available in all regions of Azure where Azure Database for MariaDB is deployed for General Purpose and Memory Optimized servers.

Terminologia e descrizioneTerminology and description

Rete virtuale: è possibile associare reti virtuali alla sottoscrizione di Azure.Virtual network: You can have virtual networks associated with your Azure subscription.

Subnet: una rete virtuale contiene una o più subnet.Subnet: A virtual network contains subnets. Le macchine virtuali (VM) di Azure esistenti vengono assegnate a subnet.Any Azure virtual machines (VMs) that you have are assigned to subnets. Una subnet può contenere varie VM o altri nodi di calcolo.One subnet can contain multiple VMs or other compute nodes. I nodi di calcolo esterni alla rete virtuale non possono accedervi, a meno che non si configuri la sicurezza in modo da consentirne l'accesso.Compute nodes that are outside of your virtual network cannot access your virtual network unless you configure your security to allow access.

Endpoint del servizio di rete virtuale: un endpoint del servizio di rete virtuale è una subnet in cui i valori delle proprietà includono uno o più nomi formali di tipi di servizi di Azure.Virtual Network service endpoint: A Virtual Network service endpoint is a subnet whose property values include one or more formal Azure service type names. Questo articolo è incentrato sul nome del tipo Microsoft.Sql, che fa riferimento al servizio Azure denominato Database SQL.In this article we are interested in the type name of Microsoft.Sql, which refers to the Azure service named SQL Database. Questo tag di servizio si applica ai servizi di Database di Azure per MariaDB, MySQL e PostgreSQL.This service tag also applies to the Azure Database for MariaDB, MySQL, and PostgreSQL services. È importante tenere presente che, quando si applica il tag di servizio Microsoft.Sql a un endpoint di servizio di rete virtuale, viene configurato il traffico dell'endpoint per tutti i server di Database SQL di Azure, Database di Azure per MariaDB, Database di Azure per MySQL e Database di Azure per PostgreSQL nella subnet.It is important to note when applying the Microsoft.Sql service tag to a VNet service endpoint it will configure service endpoint traffic for all Azure SQL Database, Azure Database for MariaDB, Azure Database for MySQL, and Azure Database for PostgreSQL servers on the subnet.

Regola di rete virtuale: una regola di rete virtuale per il server di Database di Azure per MariaDB è una subnet presente nell'elenco di controllo di accesso (ACL) del server di Database di Azure per MariaDB.Virtual network rule: A virtual network rule for your Azure Database for MariaDB server is a subnet that is listed in the access control list (ACL) of your Azure Database for MariaDB server. Per essere inclusa nell'elenco ACL del server di Database di Azure per MariaDB, la subnet deve contenere il nome tipo Microsoft.Sql.To be in the ACL for your Azure Database for MariaDB server, the subnet must contain the Microsoft.Sql type name.

Una regola di rete virtuale indica al server di Database di Azure per MariaDB di accettare le comunicazioni da ogni nodo che si trova nella subnet.A virtual network rule tells your Azure Database for MariaDB server to accept communications from every node that is on the subnet.

Vantaggi di una regola di rete virtualeBenefits of a virtual network rule

Finché non si interviene, le macchine virtuali nelle subnet non possono comunicare con il server di Database di Azure per MariaDB.Until you take action, the VMs on your subnets cannot communicate with your Azure Database for MariaDB server. Un'azione che stabilisce la comunicazione è la creazione di una regola della rete virtuale.One action that establishes the communication is the creation of a virtual network rule. La base logica per la scelta dell'approccio delle regole di rete virtuale richiede una discussione di confronto riguardo le opzioni di sicurezza concorrenti offerte dal firewall.The rationale for choosing the VNet rule approach requires a compare-and-contrast discussion involving the competing security options offered by the firewall.

R.A. Possibilità di accedere ai servizi di AzureAllow access to Azure services

Il riquadro Sicurezza connessione contiene un pulsante ON/OFF con l'etichetta Consenti l'accesso a Servizi di Azure.The Connection security pane has an ON/OFF button that is labeled Allow access to Azure services. L'impostazione ON consente le comunicazioni da tutti gli indirizzi IP di Azure e tutte le subnet di Azure.The ON setting allows communications from all Azure IP addresses and all Azure subnets. Questi indirizzi IP o subnet di Azure potrebbero non essere di proprietà dell'utente.These Azure IPs or subnets might not be owned by you. Questa impostazione ON è probabilmente più aperta rispetto al livello desiderato per l'istanza di Database di Azure per MariaDB.This ON setting is probably more open than you want your Azure Database for MariaDB Database to be. La funzione delle regole della rete virtuale offre un controllo molto più granulare.The virtual network rule feature offers much finer granular control.

B.B. Regole IPIP rules

Il firewall di Database di Azure per MariaDB consente di specificare gli intervalli di indirizzi IP da cui vengono accettate le comunicazioni nel server di Database di Azure per MariaDB.The Azure Database for MariaDB firewall allows you to specify IP address ranges from which communications are accepted into the Azure Database for MariaDB server. Questo approccio è ideale per gli indirizzi IP stabili esterni alla rete privata di Azure,This approach is fine for stable IP addresses that are outside the Azure private network. ma molti nodi all'interno della rete privata di Azure sono configurati con indirizzi IP dinamici.But many nodes inside the Azure private network are configured with dynamic IP addresses. Gli indirizzi IP dinamici potrebbero cambiare, ad esempio al riavvio di una macchina virtuale.Dynamic IP addresses might change, such as when your VM is restarted. Sarebbe inutile specificare un indirizzo IP dinamico in una regola del firewall, in un ambiente di produzione.It would be folly to specify a dynamic IP address in a firewall rule, in a production environment.

È possibile recuperare l'opzione IP ottenendo un indirizzo IP statico per la macchina virtuale.You can salvage the IP option by obtaining a static IP address for your VM. Per i dettagli, vedere Configurare indirizzi IP privati per una VM mediante il portale di Azure.For details, see Configure private IP addresses for a virtual machine by using the Azure portal.

Tuttavia, l'approccio IP statico può diventare difficile da gestire ed è dispendioso a livello di scalabilità.However, the static IP approach can become difficult to manage, and it is costly when done at scale. Le regole della rete virtuale sono più semplici da creare e gestire.Virtual network rules are easier to establish and to manage.

C.C. Non è ancora possibile avere Database di Azure per MariaDB in una subnet, se non si definisce un endpoint di servizioCannot yet have Azure Database for MariaDB on a subnet without defining a service endpoint

Se il server Microsoft.Sql è un nodo in una subnet nella rete virtuale, tutti i nodi all'interno della rete virtuale possono comunicare con il server di Database di Azure per MariaDB.If your Microsoft.Sql server was a node on a subnet in your virtual network, all nodes within the virtual network could communicate with your Azure Database for MariaDB server. In questo caso, le macchine virtuali possono comunicare con Database di Azure per MariaDB senza richiedere regole di rete virtuale o IP.In this case, your VMs could communicate with Azure Database for MariaDB without needing any virtual network rules or IP rules.

Tuttavia, a partire da agosto 2018, il servizio Database di Azure per MariaDB non è ancora tra i servizi che possono essere assegnati direttamente a una subnet.However as of August 2018, the Azure Database for MariaDB service is not yet among the services that can be assigned directly to a subnet.

Dettagli sulle regole della rete virtualeDetails about virtual network rules

Questa sezione illustra alcuni dettagli sulle regole della rete virtuale.This section describes several details about virtual network rules.

Una sola area geograficaOnly one geographic region

Un endpoint del servizio Rete virtuale si applica a una sola area di Azure.Each Virtual Network service endpoint applies to only one Azure region. L'endpoint non consente ad altre aree di accettare le comunicazioni dalla subnet.The endpoint does not enable other regions to accept communication from the subnet.

Ogni regola della rete virtuale è limitata all'area a cui si applica il relativo endpoint sottostante.Any virtual network rule is limited to the region that its underlying endpoint applies to.

A livello di server, non a livello di databaseServer-level, not database-level

Ogni regola di rete virtuale si applica all'intero server di Database di Azure per MariaDB, non solo a un determinato database nel server.Each virtual network rule applies to your whole Azure Database for MariaDB server, not just to one particular database on the server. In altre parole, la regola della rete virtuale si applica a livello di server, non a livello di database.In other words, virtual network rule applies at the server-level, not at the database-level.

Ruoli di amministrazione di sicurezzaSecurity administration roles

I ruoli di sicurezza sono distinti nell'amministrazione degli endpoint del servizio Rete virtuale.There is a separation of security roles in the administration of Virtual Network service endpoints. Ogni ruolo indicato di seguito deve svolgere determinate azioni:Action is required from each of the following roles:

  • Amministratore di rete:   attiva l'endpoint.Network Admin:   Turn on the endpoint.
  • Amministratore di database:   aggiornare l'elenco di controllo di accesso (ACL) per aggiungere la subnet specificata al server di Database di Azure per MariaDB.Database Admin:   Update the access control list (ACL) to add the given subnet to the Azure Database for MariaDB server.

Alternativa del controllo degli accessi in base al ruolo:RBAC alternative:

I ruoli di amministratore di rete e amministratore di database hanno più funzionalità di quelle necessarie a gestire le regole della rete virtuale.The roles of Network Admin and Database Admin have more capabilities than are needed to manage virtual network rules. È necessario solo un subset delle relative funzionalità.Only a subset of their capabilities is needed.

È possibile scegliere di usare il [controllo degli accessi in base al ruolo (RBAC)] rbac-what-is-813s in Azure per creare un singolo ruolo personalizzato che contiene solo il subset necessario di funzionalità.You have the option of using role-based access control (RBAC) in Azure to create a single custom role that has only the necessary subset of capabilities. È possibile usare il ruolo personalizzato anziché coinvolgere l'amministratore di rete o di database. La superficie di attacco dell'esposizione a rischi per la sicurezza è ridotta se si aggiunge un utente a un ruolo personalizzato, anziché aggiungere l'utente agli altri due ruoli di amministratore principali.The custom role could be used instead of involving either the Network Admin or the Database Admin. The surface area of your security exposure is lower if you add a user to a custom role, versus adding the user to the other two major administrator roles.

Nota

In alcuni casi, Database di Azure per MariaDB e la subnet della rete virtuale sono in sottoscrizioni diverse.In some cases the Azure Database for MariaDB and the VNet-subnet are in different subscriptions. In questi casi è necessario garantire le configurazioni seguenti:In these cases you must ensure the following configurations:

  • Entrambe le sottoscrizioni devono essere nello stesso tenant di Azure Active Directory.Both subscriptions must be in the same Azure Active Directory tenant.
  • L'utente ha le autorizzazioni necessarie per avviare le operazioni, ad esempio abilitare gli endpoint di servizio e aggiungere una subnet della rete virtuale al server specificato.The user has the required permissions to initiate operations, such as enabling service endpoints and adding a VNet-subnet to the given Server.

LimitazioniLimitations

Per Database di Azure per MariaDB, la funzionalità delle regole di rete virtuale presenta le limitazioni seguenti:For Azure Database for MariaDB, the virtual network rules feature has the following limitations:

  • Nel firewall per Database di Azure per MariaDB ogni regola di rete virtuale fa riferimento a una subnet.In the firewall for your Azure Database for MariaDB, each virtual network rule references a subnet. Tutte queste subnet cui viene fatto riferimento devono essere ospitate nella stessa area geografica che ospita Database di Azure per MariaDB.All these referenced subnets must be hosted in the same geographic region that hosts the Azure Database for MariaDB.

  • Ogni server di Database di Azure per MariaDB può includere fino a 128 voci ACL per qualsiasi rete virtuale specificata.Each Azure Database for MariaDB server can have up to 128 ACL entries for any given virtual network.

  • Le regole della rete virtuale si applicano solo alle reti virtuali di Azure Resource Manager e non alle reti con un modello di distribuzione classica.Virtual network rules apply only to Azure Resource Manager virtual networks; and not to classic deployment model networks.

  • L'attivazione degli endpoint di servizio rete virtuale nel Database di Azure per MariaDB usando il tag di servizio Microsoft. SQL abilita anche gli endpoint per tutti i servizi di Database di Azure: Database di Azure per MariaDB, Database di Azure per MySQL, Database di Azure per PostgreSQL, database SQL di Azure e Azure SQL Data Warehouse.Turning ON virtual network service endpoints to Azure Database for MariaDB using the Microsoft.Sql service tag also enables the endpoints for all Azure Database services: Azure Database for MariaDB, Azure Database for MySQL, Azure Database for PostgreSQL, Azure SQL Database and Azure SQL Data Warehouse.

  • Gli endpoint di servizio di rete virtuale sono supportati solo per i server per utilizzo generico e ottimizzati per la memoria.Support for VNet service endpoints is only for General Purpose and Memory Optimized servers.

  • Nel firewall, gli intervalli di indirizzi IP si applicano ai seguenti elementi di rete, ma non le regole della rete virtuale:On the firewall, IP address ranges do apply to the following networking items, but virtual network rules do not:

ExpressRouteExpressRoute

Se la rete è connessa alla rete di Azure con ExpressRoute, ogni circuito è configurato con due indirizzi IP pubblici in Microsoft Edge.If your network is connected to the Azure network through use of ExpressRoute, each circuit is configured with two public IP addresses at the Microsoft Edge. I due indirizzi IP vengono usati per connettersi ai servizi Microsoft, ad esempio ad Archiviazione di Azure, usando il peering pubblico di Azure.The two IP addresses are used to connect to Microsoft Services, such as to Azure Storage, by using Azure Public Peering.

Per consentire le comunicazioni tra il circuito e Database di Azure per MariaDB, è necessario creare regole di rete IP per gli indirizzi IP pubblici dei circuiti.To allow communication from your circuit to Azure Database for MariaDB, you must create IP network rules for the public IP addresses of your circuits. Per trovare gli indirizzi IP pubblici del circuito ExpressRoute, aprire un ticket di supporto in ExpressRoute tramite il portale di Azure.In order to find the public IP addresses of your ExpressRoute circuit, open a support ticket with ExpressRoute by using the Azure portal.

Aggiunta di una regola del firewall della rete virtuale al server senza attivare gli endpoint di servizio di rete virtualeAdding a VNET Firewall rule to your server without turning On VNET Service Endpoints

La semplice impostazione di una regola del firewall non consente di proteggere il server nella rete virtuale.Merely setting a Firewall rule does not help secure the server to the VNet. Per garantire la sicurezza, è anche necessario attivare gli endpoint servizio di rete virtuale.You must also turn VNet service endpoints On for the security to take effect. Quando si attivano gli endpoint servizio, la subnet della rete virtuale entra in un periodo di inattività fino al termine della transizione dallo stato inattivo a quello attivo.When you turn service endpoints On, your VNet-subnet experiences downtime until it completes the transition from Off to On. Questo vale soprattutto per le reti virtuali di grandi dimensioni.This is especially true in the context of large VNets. È possibile usare il flag IgnoreMissingServiceEndpoint per ridurre o eliminare il tempo di inattività durante la transizione.You can use the IgnoreMissingServiceEndpoint flag to reduce or eliminate the downtime during transition.

È possibile impostare il flag IgnoreMissingServiceEndpoint usando l'interfaccia della riga di comando di Azure o il portale di Azure.You can set the IgnoreMissingServiceEndpoint flag by using the Azure CLI or portal.

Passaggi successiviNext steps

Per articoli relativi alla creazione di regole di rete virtuale, vedere:For articles on creating VNet rules, see: