Compartir vía


Conceptos de conectividad y redes para Azure Database for MySQL: servidor flexible

En este artículo se presentan los conceptos para controlar la conectividad a la instancia de servidor flexible de Azure Database for MySQL. Aprenderá en detalle los conceptos de red del servidor flexible de Azure Database for MySQL para crear un servidor en Azure y acceder a él de forma segura.

Un servidor flexible de Azure Database for MySQL admite tres formas de configurar la conectividad con los servidores:

Nota:

Después de implementar un servidor con acceso público o privado (a través de la integración de red virtual), no puede modificar el modo de conectividad. Pero en el modo de acceso público, puede habilitar o deshabilitar los puntos de conexión privados según sea necesario y también deshabilitar el acceso público si es necesario.

Elección de una opción de red

Elija el método de acceso público (direcciones IP permitidas) y punto de conexión privado si quiere las funcionalidades siguientes:

  • Conexión desde recursos de Azure que no admiten redes virtuales
  • Conexión desde recursos externos de Azure que no están conectados mediante VPN o ExpressRoute
  • El servidor flexible es accesible a través de un punto de conexión público y se puede acceder a él a través de recursos de Internet autorizados. El acceso público puede deshabilitarse si es necesario.
  • Capacidad de configurar puntos de conexión privados para acceder al servidor desde hosts en una red virtual (VNet)

Elija la opción de acceso privado (integración con red virtual) si quiere las funcionalidades siguientes:

  • Conexión al servidor flexible desde recursos de Azure dentro de la misma red virtual o una red virtual emparejada sin necesidad de configurar un punto de conexión privado
  • Uso de VPN o ExpressRoute para conectarse desde recursos que no son de Azure al servidor flexible
  • Ningún punto de conexión público

Las características siguientes se aplican tanto si decide usar la opción de acceso privado como la de acceso público:

  • Las conexiones de direcciones IP permitidas deben autenticarse en la instancia de servidor flexible de Azure Database for MySQL con credenciales válidas
  • Hay cifrado de conexión disponible para el tráfico de red
  • El servidor tiene un nombre de dominio completo (FQDN). En el caso de la propiedad hostname en las cadenas de conexión, se recomienda usar el FQDN en lugar de una dirección IP.
  • Las dos opciones controlan el acceso en el nivel de servidor, no en el nivel de base de datos o de tabla. Tendría que usar las propiedades de los roles de MySQL para controlar el acceso de bases de datos, tablas y otros objetos.

Escenarios de red virtual no admitidos

  • Punto de conexión público (o dirección IP pública o DNS): un servidor flexible implementado en una red virtual no puede tener un punto de conexión público.
  • Una vez que se haya implementado el servidor flexible en una red virtual y una subred, no se puede trasladar a otra red virtual o subred.
  • Una vez implementado el servidor flexible, no se puede mover la red virtual que este usa a otro grupo de recursos o suscripción.
  • No se puede aumentar el tamaño de la subred (espacios de direcciones) si existen recursos en la subred.
  • No se permite el cambio de acceso público a privado después de crear el servidor. El método recomendado es usar la restauración a un momento dado.

Nota:

Si usa el servidor DNS personalizado, debe usar un reenviador DNS para resolver el FQDN de la instancia de Azure Database for MySQL: servidor flexible. Para más información, consulte Resolución de nombres con un servidor DNS.

Hostname

Independientemente de la opción de red, se recomienda usar el nombre de dominio completo (FQDN) <servername>.mysql.database.azure.com en cadenas de conexión al conectarse a la instancia de servidor flexible de Azure Database for MySQL. No se garantiza que la dirección IP del servidor permanezca estática. El uso del FQDN le ayudará a evitar realizar cambios en la cadena de conexión.

Un ejemplo que usa un FQDN como nombre de host es hostname = servername.mysql.database.azure.com. Siempre que sea posible, evite usar el nombre de host = 10.0.0.4 (una dirección privada) o el nombre de host = 40.2.45.67 (una dirección pública).

TLS y SSL

El servidor flexible de Azure Database for MySQL admite la conexión de las aplicaciones cliente a la instancia del servidor flexible de Azure Database for MySQL mediante el cifrado de la Capa de sockets seguros (SSL) con la Seguridad de la capa de transporte (TLS). TLS es un protocolo estándar del sector que garantiza conexiones de red cifradas entre el servidor de bases de datos y las aplicaciones cliente, lo que le permite ajustarse a los requisitos de cumplimiento.

De manera predeterminada, el servidor flexible de Azure Database for MySQL solo admite conexiones cifradas mediante la Seguridad de la capa de transporte (TLS 1.2), y todas las conexiones entrantes con TLS 1.0 y TLS 1.1 se denegarán de manera predeterminada. La obligatoriedad de conexiones cifradas o la configuración de versiones de TLS en el servidor flexible se pueden configurar y cambiar.

A continuación, se muestran las distintas configuraciones de SSL y TLS que puede tener para el servidor flexible:

Importante

Según Eliminación de la compatibilidad con los protocolos TLS 1.0 y TLS 1.1, a partir de principios de septiembre de 2024, los nuevos servidores ya no podrán usar TLS 1.0 o 1.1, y los servidores existentes no podrán degradarse a estas versiones. A partir de mediados de septiembre de 2024, iniciaremos una actualización obligatoria de todos los servidores que actualmente usan TLS 1.0 o 1.1 a TLS 1.2. Se espera que este proceso de actualización se complete a finales de septiembre de 2024. Se recomienda encarecidamente a los clientes asegurarse de que sus aplicaciones sean totalmente compatibles con TLS 1.2 antes de finales de septiembre.

Escenario Configuración de parámetros del servidor Descripción
Deshabilitar SSL (conexiones cifradas) require_secure_transport = OFF Si la aplicación heredada no admite conexiones cifradas a la instancia de servidor flexible de Azure Database for MySQL, puede deshabilitar la aplicación de conexiones cifradas al servidor flexible estableciendo require_secure_transport=OFF.
Aplicación de SSL con TLS versión < 1.2 (quedará en desuso en septiembre de 2024) require_secure_transport = ON y tls_version = TLS 1.0 o TLS 1.1 Si la aplicación heredada admite conexiones cifradas, pero necesita la versión de TLS < 1.2, puede permitir conexiones cifradas, pero configurar el servidor flexible para permitir conexiones con la versión de TLS (v1.0 o v1.1) admitida por la aplicación
Exigir SSL con la versión de TLS = 1.2 (configuración predeterminada) require_secure_transport = ON y tls_version = TLS 1.2 Esta es la configuración predeterminada y recomendada para un servidor flexible.
Exigir SSL con la versión de TLS = 1.3 (compatible con MySQL v8.0 y versiones posteriores) require_secure_transport = ON y tls_version = TLS 1.3 Esta configuración es útil y recomendada para el desarrollo de nuevas aplicaciones

Nota

No se admiten cambios en el cifrado SSL del servidor flexible. Los conjuntos de cifrado FIPS se aplican de manera predeterminada cuando tls_version está establecido en la versión de TLS 1.2. En el caso de las versiones de TLS distintas de la versión 1.2, el cifrado SSL se establece en la configuración predeterminada que se incluye con la instalación de la comunidad de MySQL.

Revise conexión mediante SSL/TLS para aprender a identificar la versión de TLS que está usando.