Private Link para Azure Database for MySQLPrivate Link for Azure Database for MySQL

Private Link permite conectarse a varios servicios PaaS en Azure mediante un punto de conexión privado.Private Link allows you to connect to various PaaS services in Azure via a private endpoint. En esencia, Azure Private Link incorpora los servicios de Azure dentro de su red virtual privada (VNet).Azure Private Link essentially brings Azure services inside your private Virtual Network (VNet). Se puede acceder a los recursos de PaaS mediante la dirección IP privada, al igual que cualquier otro recurso de la red virtual.The PaaS resources can be accessed using the private IP address just like any other resource in the VNet.

Para una lista de los servicios PaaS que admiten la funcionalidad Private Link, consulte la página de documentación de Private Link.For a list to PaaS services that support Private Link functionality, review the Private Link documentation. Un punto de conexión privado es una dirección IP privada dentro de una red virtual y una subred específicas.A private endpoint is a private IP address within a specific VNet and Subnet.

Nota

La característica de vínculo privado solo está disponible para servidores de Azure Database for MySQL en los planes de tarifa De uso general u Optimizado para memoria.The private link feature is only available for Azure Database for MySQL servers in the General Purpose or Memory Optimized pricing tiers. Asegúrese de que el servidor de bases de datos esté incluido en uno de estos planes de tarifa.Ensure the database server is in one of these pricing tiers.

Prevención de la filtración de datosData exfiltration prevention

La filtración de datos en Azure Database for MySQL tiene lugar cuando un usuario autorizado, como un administrador de base de datos, puede extraer datos de un sistema y moverlos a otra ubicación o sistema que esté fuera de la organización.Data ex-filtration in Azure Database for MySQL is when an authorized user, such as a database admin, is able to extract data from one system and move it to another location or system outside the organization. Por ejemplo, el usuario mueve los datos a una cuenta de almacenamiento propiedad de un tercero.For example, the user moves the data to a storage account owned by a third party.

Piense en un escenario en el que un usuario ejecuta MySQL Workbench dentro de una máquina virtual (VM) de Azure que se conecta a un servidor de Azure Database for MySQL aprovisionado en la región Oeste de EE. UU.Consider a scenario with a user running MySQL Workbench inside an Azure Virtual Machine (VM) that is connecting to an Azure Database for MySQL server provisioned in West US. En el ejemplo siguiente se muestra cómo limitar el acceso con puntos de conexión públicos en la instancia de Azure Database for MySQL mediante controles de acceso a la red.The example below shows how to limit access with public endpoints on Azure Database for MySQL using network access controls.

  • Deshabilite todo el tráfico de los servicios de Azure a la instancia de Azure Database for MySQL mediante el punto de conexión público. Para ello, establezca la opción Permitir servicios de Azure en Desactivada.Disable all Azure service traffic to Azure Database for MySQL via the public endpoint by setting Allow Azure Services to OFF. Asegúrese de que ningún intervalo o dirección IP tenga permitido el acceso al servidor a través de las reglas de firewall o los puntos de conexión de servicio de red virtual.Ensure no IP addresses or ranges are allowed to access the server either via firewall rules or virtual network service endpoints.

  • Permita solo el tráfico a Azure Database for MySQL mediante la dirección IP privada de la máquina virtual.Only allow traffic to the Azure Database for MySQL using the Private IP address of the VM. Para más información, consulte los artículos acerca del punto de conexión de servicio y de las reglas de firewall de la red virtual.For more information, see the articles on Service Endpoint and VNet firewall rules.

  • En la máquina virtual de Azure, restrinja el ámbito de la conexión saliente mediante el uso de grupos de seguridad de red (NSG) y etiquetas de servicio, como se indica a continuación.On the Azure VM, narrow down the scope of outgoing connection by using Network Security Groups (NSGs) and Service Tags as follows

    • Especifique una regla de NSG para permitir el tráfico en la etiqueta de servicio SQL.WestUs (solo se permite la conexión a la instancia de Azure Database for MySQL en la región Oeste de EE. UU.).Specify an NSG rule to allow traffic for Service Tag = SQL.WestUs - only allowing connection to Azure Database for MySQL in West US
    • Especifique una regla de NSG (con una prioridad mayor) para denegar el tráfico a la etiqueta de servicio SQL (se deniegan las conexiones para actualizar a Azure Database for MySQL en todas las regiones).Specify an NSG rule (with a higher priority) to deny traffic for Service Tag = SQL - denying connections to Update to Azure Database for MySQL in all regions

Al final de esta configuración, la máquina virtual de Azure solo puede conectarse a la instancia de Azure Database for MySQL de la región Oeste de EE. UU.At the end of this setup, the Azure VM can connect only to Azure Database for MySQL in the West US region. Sin embargo, la conectividad no está restringida a una sola instancia de Azure Database for MySQL.However, the connectivity isn't restricted to a single Azure Database for MySQL. La máquina virtual también puede conectarse a todas las instancias de Azure Database for MySQL de la región Oeste de EE. UU., incluidas las bases de datos que no forman parte de la suscripción.The VM can still connect to any Azure Database for MySQL in the West US region, including the databases that aren't part of the subscription. Aunque en el escenario anterior se ha reducido el ámbito de la filtración de datos a una región concreta, no se ha eliminado por completo.While we've reduced the scope of data exfiltration in the above scenario to a specific region, we haven't eliminated it altogether.

Con Private Link, ahora puede configurar controles de acceso a la red como grupos de seguridad de red a fin de restringir el acceso al punto de conexión privado.With Private Link, you can now set up network access controls like NSGs to restrict access to the private endpoint. Los recursos PaaS de Azure individuales se asignan a puntos de conexión privados concretos.Individual Azure PaaS resources are then mapped to specific private endpoints. Un usuario interno malintencionado solo puede acceder al recurso PaaS asignado (por ejemplo, una instancia de Azure Database for MySQL), pero no a los recursos restantes.A malicious insider can only access the mapped PaaS resource (for example an Azure Database for MySQL) and no other resource.

Conectividad local a través del emparejamiento privadoOn-premises connectivity over private peering

Cuando se conecta al punto de conexión público desde máquinas locales, es necesario agregar su dirección IP al firewall basado en IP mediante una regla de firewall a nivel de servidor.When you connect to the public endpoint from on-premises machines, your IP address needs to be added to the IP-based firewall using a server-level firewall rule. Aunque este modelo funciona bien para permitir el acceso a equipos individuales para las cargas de trabajo de desarrollo o de prueba, es difícil de administrar en los entornos de producción.While this model works well for allowing access to individual machines for dev or test workloads, it's difficult to manage in a production environment.

Con Private Link, puede habilitar el acceso entre locales al punto de conexión privado mediante ExpressRoute, el emparejamiento privado o el túnel de VPN.With Private Link, you can enable cross-premises access to the private endpoint using Express Route (ER), private peering or VPN tunnel. Posteriormente, puede deshabilitar todo el acceso a través de un punto de conexión público y no usar el firewall basado en IP.They can subsequently disable all access via public endpoint and not use the IP-based firewall.

Nota

En algunos casos, Azure Database for MySQL y la subred de red virtual se encuentran en distintas suscripciones.In some cases the Azure Database for MySQL and the VNet-subnet are in different subscriptions. En estos casos debe garantizar las siguientes configuraciones:In these cases you must ensure the following configurations:

  • Asegúrese de que ambas suscripciones tengan el proveedor de recursos Microsoft.DBforMySQL registrado.Make sure that both the subscription has the Microsoft.DBforMySQL resource provider registered. Para más información, consulte resource-manager-registration.For more information refer resource-manager-registration

Proceso de creaciónCreation Process

Los puntos de conexión privados son necesarios para habilitar Private Link.Private endpoints are required to enable Private Link. Se puede realizar mediante cualquiera de las guías paso a paso que se indican a continuación.This can be done using the following how-to guides.

Proceso de aprobaciónApproval Process

Una vez que el administrador de red crea el punto de conexión privado (PE), el administrador de MySQL puede administrar la conexión del punto de conexión privado (PEC) a Azure Database for MySQL.Once the network admin creates the private endpoint (PE), the MySQL admin can manage the private endpoint Connection (PEC) to Azure Database for MySQL. Esta separación de tareas entre el administrador de red y el administrador de base de datos es útil para la administración de la conectividad de Azure Database for MySQL.This separation of duties between the network admin and the DBA is helpful for management of the Azure Database for MySQL connectivity.

  • Vaya al recurso de servidor de Azure Database for MySQL en Azure Portal.Navigate to the Azure Database for MySQL server resource in the Azure portal.
    • Seleccione las conexiones del punto de conexión privado en el panel izquierdo.Select the private endpoint connections in the left pane
    • Muestra una lista de todas las conexiones del punto de conexión privado (PEC).Shows a list of all private endpoint Connections (PECs)
    • Punto de conexión privado (PE) correspondiente creado.Corresponding private endpoint (PE) created

Selección del portal del punto de conexión privado

  • Seleccione una conexión del punto de conexión privado en la lista.Select an individual PEC from the list by selecting it.

selección del punto de conexión privado pendiente de aprobación

  • El administrador de servidor de MySQL puede optar por aprobar o rechazar un punto de conexión privado y, además, tiene la opción de agregar una respuesta con un texto breve.The MySQL server admin can choose to approve or reject a PEC and optionally add a short text response.

selección del mensaje del punto de conexión privado

  • Después de la aprobación o el rechazo, la lista reflejará el estado apropiado, junto con el texto de respuesta.After approval or rejection, the list will reflect the appropriate state along with the response text

selección del estado final del punto de conexión privado

Los clientes se pueden conectar al punto de conexión privado desde la misma red virtual, desde una red virtual emparejada de la misma región o a través de una conexión entre redes virtuales de distintas regiones.Clients can connect to the private endpoint from the same VNet, peered VNet in same region or across regions, or via VNet-to-VNet connection across regions. Además, los clientes pueden conectarse de forma local mediante ExpressRoute, emparejamiento privado o tunelización de VPN.Additionally, clients can connect from on-premises using ExpressRoute, private peering, or VPN tunneling. A continuación, puede ver un diagrama simplificado que muestra los casos de uso habituales.Below is a simplified diagram showing the common use cases.

Información general sobre la selección del punto de conexión privado

Conexión desde una máquina virtual de Azure en una red virtual emparejada (VNet)Connecting from an Azure VM in Peered Virtual Network (VNet)

Configure el Emparejamiento de VNET para establecer la conectividad con Azure Database for MySQL desde una máquina virtual de Azure en una red virtual emparejada.Configure VNet peering to establish connectivity to the Azure Database for MySQL from an Azure VM in a peered VNet.

Conexión desde una máquina virtual de Azure en un entorno de red virtual a red virtualConnecting from an Azure VM in VNet-to-VNet environment

Configure la conexión de la puerta de enlace de VPN entre redes virtuales para establecer conectividad con una instancia de Azure Database for MySQL desde una máquina virtual de Azure de otra región o suscripción.Configure VNet-to-VNet VPN gateway connection to establish connectivity to a Azure Database for MySQL from an Azure VM in a different region or subscription.

Conexión desde un entorno local a través de VPNConnecting from an on-premises environment over VPN

Para establecer la conectividad desde un entorno local a Azure Database for MySQL, elija e implemente una de las siguientes opciones:To establish connectivity from an on-premises environment to the Azure Database for MySQL, choose and implement one of the options:

Las situaciones y resultados que se muestran a continuación son posibles cuando se usa Private Link en combinación con las reglas de firewall:The following situations and outcomes are possible when you use Private Link in combination with firewall rules:

  • Si no configura ninguna regla de firewall, ningún tráfico podrá tener acceso de forma predeterminada a la instancia de Azure Database for MySQL.If you don't configure any firewall rules, then by default, no traffic will be able to access the Azure Database for MySQL.

  • Si configura el tráfico público o un punto de conexión de servicio y crea puntos de conexión privados, los distintos tipos de tráfico entrante estarán autorizados por el tipo de regla de firewall correspondiente.If you configure public traffic or a service endpoint and you create private endpoints, then different types of incoming traffic are authorized by the corresponding type of firewall rule.

  • Si no configura ningún tráfico público ni punto de conexión de servicio y crea puntos de conexión privados, Azure Database for MySQL solo será accesible a través de los puntos de conexión privados.If you don't configure any public traffic or service endpoint and you create private endpoints, then the Azure Database for MySQL is accessible only through the private endpoints. Si no configura ningún tráfico público ni punto de conexión de servicio, después de que se rechacen o eliminen todos los puntos de conexión privados aprobados, ningún tráfico podrá tener acceso a la instancia de Azure Database for MySQL.If you don't configure public traffic or a service endpoint, after all approved private endpoints are rejected or deleted, no traffic will be able to access the Azure Database for MySQL.

Denegación del acceso público para Azure Database for MySQLDeny public access for Azure Database for MySQL

Si quiere depender únicamente de puntos de conexión privados para acceder a su instancia de Azure Database for MySQL, puede deshabilitar la configuración de todos los puntos de conexión públicos (reglas de firewall y puntos de conexión de servicio de red virtual). Para ello, configure Deny Public Network Access (Denegar el acceso a la red pública) en el servidor de bases de datos.If you want to rely only on private endpoints for accessing their Azure Database for MySQL, you can disable setting all public endpoints (i.e. firewall rules and VNet service endpoints) by setting the Deny Public Network Access configuration on the database server.

Si esta opción está establecida en YES (SÍ), solo se permiten conexiones a la instancia de Azure Database for MySQL mediante puntos de conexión privados.When this setting is set to YES, only connections via private endpoints are allowed to your Azure Database for MySQL. Si esta opción está establecida en NO, los clientes pueden conectarse a su instancia de Azure Database for MySQL en función de la configuración del firewall o del punto de conexión de servicio de red virtual.When this setting is set to NO, clients can connect to your Azure Database for MySQL based on your firewall or VNet service endpoint settings. Además, una vez establecido el valor de acceso a la red privada, los clientes no pueden agregar ni actualizar las "reglas de firewall" ni la "regla de punto de conexión de servicio de red virtual" existentes.Additionally, once the value of the Private network access is set, customers cannot add and/or update existing 'Firewall rules' and 'VNet service endpoint rules'.

Nota

Esta característica está disponible en todas las regiones de Azure donde Azure Database for MySQL: servidor único admite los planes de tarifa de uso general y optimizados para memoria.This feature is available in all Azure regions where Azure Database for MySQL - Single server supports General Purpose and Memory Optimized pricing tiers.

Esta configuración no afecta a las configuraciones de SSL y TLS de su instancia de Azure Database for MySQL.This setting does not have any impact on the SSL and TLS configurations for your Azure Database for MySQL.

Para saber cómo establecer la opción Deny Public Network Access (Denegar el acceso a la red pública) para su instancia de Azure Database for MySQL desde Azure Portal, consulte Cómo configurar la denegación del acceso a una red pública.To learn how to set the Deny Public Network Access for your Azure Database for MySQL from Azure portal, refer to How to configure Deny Public Network Access.

Pasos siguientesNext steps

Para más información sobre las características de seguridad de Azure Database for MySQL, consulte estos artículos:To learn more about Azure Database for MySQL security features, see the following articles: