Descripción del cifrado en MySQL

Completado

Datos en tránsito

Azure Database for MySQL admite conexiones cifradas mediante TLS 1.2. Este protocolo está habilitado de manera predeterminada y lo administra el parámetro del servidor tls_version. Este parámetro permite aplicar la versión mínima de TLS que permite el servidor. Puede seleccionar más de una versión, por ejemplo, si quiere permitir TLS 1.2 y 1.3. Al cambiar este parámetro, debe reiniciar el servidor para aplicar el cambio.

Screenshot showing the server parameter tls_version page.

Si la aplicación cliente no admite conexiones cifradas, tendrá que deshabilitar las conexiones cifradas en Azure Database for MySQL. En Azure Portal, vaya al servidor MySQL y, en Configuración, seleccione Parámetros del servidor. En el cuadro de búsqueda, escriba require_secure_transport. Este parámetro define si las conexiones del cliente deben usar una conexión segura, es decir, SSL en TCP/IP, o conexiones que usan un archivo de socket en Unix o memoria compartida en Windows. Si la aplicación cliente no admite conexiones cifradas, establezca require_secure_transport en Desactivado.

Nota

Si establece require_secure_transport en DESACTIVADO, pero un cliente se conecta con una conexión cifrada, se seguirá aceptando.

Para usar conexiones cifradas con las aplicaciones cliente, deberá descargar el certificado SSL público en Azure Portal. Vaya al servidor MySQL y, en el menú izquierdo, seleccione Redes. En el menú superior, seleccione Descargar certificado SSL. Para permitir que las aplicaciones se conecten de forma segura a la base de datos mediante SSL, guarde el archivo de certificado en el entorno local o en el entorno del cliente donde se hospeda la aplicación.

Datos en reposo

El cifrado de datos en reposo se admite en el motor de almacenamiento InnoDB. El cifrado se establece en el nivel de espacio de tablas e InnoDB admite el cifrado para los siguientes espacios de tablas: archivo por tabla, general y sistema. Para MySQL, versión 8.0, asegúrese de que el parámetro de servidor default_table_encryption esté establecido en ACTIVADO (está DESACTIVADO de manera predeterminada). Para una tabla cifrada, también puede cifrar el registro de fase de puesta al día. Esta opción está deshabilitada de manera predeterminada.

Para cifrar una tabla en un archivo por espacio de tablas de tabla:

CREATE TABLE myEncryptedTable (myID INT) ENCRYPTION = 'Y';

Si posteriormente modifica una tabla, se debe especificar la cláusula de cifrado:

ALTER TABLE myEncryptedTable ENCRYPTION = 'Y';

Azure Database for MySQL admite el cifrado de datos en reposo de manera predeterminada mediante las claves administradas de Microsoft. Los datos y las copias de seguridad siempre se cifran en el disco, y esta opción no se puede deshabilitar.