Transparent Data Encryption (TDE) cifra los archivos de su base de datos en la capa de almacenamiento y en tiempo real. Los datos se cifran antes de escribirse en el disco y se descifran al leerse en la memoria. Sus aplicaciones se conectan y ejecutan consultas con normalidad, sin necesidad de modificar el código.
Funcionamiento de TDE
TDE utiliza el algoritmo Advanced Encryption Standard (AES) con una clave de 256 bits. El cifrado y el descifrado ocurren en el nivel de E/S. El motor de base de datos gestiona ambas operaciones de forma transparente.
La gestión de claves se administra mediante Alibaba Cloud Key Management Service (KMS). Elija uno de los dos tipos de clave antes de habilitar TDE:
|
Tipo de clave |
Quién la gestiona |
Costo |
Más indicada para |
|
Clave de servicio |
Alibaba Cloud (automático) |
Sin costo |
Configuraciones sencillas, cuando no existen requisitos de cumplimiento sobre la propiedad de las claves |
|
Clave personalizada |
Usted, mediante KMS |
Se aplican tarifas de claves de KMS |
Control total del ciclo de vida de la clave (rotación, deshabilitación, eliminación) y cumplimiento normativo |
Ámbito de aplicación
Antes de empezar, compruebe lo siguiente:
-
Su clúster cumple con la versión secundaria mínima del motor:
No es posible habilitar TDE en clústeres serverless que ejecutan MySQL 8.0.2.
Serie de producto Motor de base de datos Versión secundaria mínima del motor Cluster Edition MySQL 5.6 5.6.1.0.21 MySQL 5.7 5.7.1.0.3 MySQL 8.0.1, MySQL 8.0.2 8.0.1.1.1 Standard Edition MySQL 5.7 5.7.1.0.3 MySQL 8.0.1, MySQL 8.0.2 8.0.1.1.1 Multi-master Cluster (Limitless) MySQL 8.0.1 8.0.1.0.42 MySQL 8.0.2 8.0.2.0.6 -
Si planea usar una clave personalizada, también necesita:
Una instancia de KMS de Alibaba Cloud activa
Autorización para que PolarDB acceda a KMS (Authorize PolarDB to access KMS)
Una cuenta de Alibaba Cloud o un usuario de Resource Access Management (RAM) con el permiso
AliyunSTSAssumeRoleAccess
Facturación
|
Tipo de tarifa |
Detalles |
|
Almacenamiento |
TDE no aumenta el tamaño de los archivos de datos. No se aplican cargos adicionales de almacenamiento. |
|
Clave de servicio |
Sin costo. |
|
Clave personalizada |
PolarDB no genera cargos. Se aplican key fees de KMS. |
Limitaciones
Revise estas limitaciones antes de habilitar TDE:
Irreversible: no es posible deshabilitar TDE después de habilitarlo.
Reinicio del clúster obligatorio: al habilitar TDE se reinicia el clúster, lo que provoca una breve interrupción del servicio (aproximadamente 10 minutos). Programe esta operación fuera del horario de mayor demanda.
Impacto en el rendimiento: en escenarios con uso intensivo de E/S, el cifrado y el descifrado consumen una pequeña cantidad de recursos de CPU. Esto puede afectar ligeramente el rendimiento de la base de datos.
Restricción en serverless: no es posible habilitar TDE en clústeres serverless que ejecutan MySQL 8.0.2.
Riesgo de la clave personalizada: si su clave personalizada deja de estar disponible, el clúster quedará inaccesible en el siguiente reinicio. Consulte Riesgo de la clave personalizada para obtener más detalles.
Global Database Network (GDN): al habilitar TDE en el clúster principal, se habilita automáticamente en todos los clústeres secundarios. Todos los clústeres del GDN comparten la misma clave, la cual reside en la región del clúster principal. No es posible habilitar TDE de forma independiente en un clúster secundario ni cambiar la región de la clave.
Habilitar TDE
Al habilitar TDE se reinicia el clúster y esta acción no se puede deshacer. Proceda con precaución.
Inicie sesión en la consola de PolarDB. En el panel de navegación izquierdo, haga clic en Settings and Management > Security. En la pestaña TDE Settings, active el interruptor TDE Status.
-
En el cuadro de diálogo, seleccione un tipo de clave:
Service Key (Automatically Generated by Alibaba Cloud): haga clic en OK. No se requiere configuración adicional.
Use Existing Custom Key: seleccione una clave de la lista desplegable y haga clic en OK. Si no aparece ninguna clave, primero create a key in KMS.
Cuando cree una clave de KMS para TDE, seleccione el algoritmo de cifrado
Aliyun_AES_256oAliyun_SM4. TDE solo admite estos dos algoritmos. Espere a que finalice la habilitación de TDE. El proceso tarda aproximadamente 10 minutos y reinicia el clúster.
(Opcional) Cifrar automáticamente las tablas nuevas
Para cifrar todas las tablas creadas después de habilitar TDE, active el interruptor Advanced Settings durante la habilitación.
Esta opción está disponible en:
PolarDB for MySQL 8.0 con la versión secundaria del motor 8.0.1.1.15 o posterior
PolarDB for MySQL 5.7 con la versión secundaria del motor 5.7.1.0.35 o posterior
Cifrar tablas existentes
Habilitar TDE no cifra automáticamente las tablas que ya existen. Ejecute ALTER TABLE para cifrarlas manualmente.
La tabla se bloquea mientras se ejecuta ALTER TABLE. Durante ese tiempo no es posible leerla ni escribirla.
|
Versión de la base de datos |
Cifrar una tabla |
Descifrar una tabla |
|
MySQL 5.6 |
|
|
|
MySQL 5.7, MySQL 8.0 |
|
|
Comprobar el estado de cifrado
Ejecute SHOW CREATE TABLE <table_name>; para comprobar si una tabla está cifrada.
MySQL 5.7, MySQL 8.0: la tabla está cifrada si el resultado contiene
ENCRYPTION='Y'.MySQL 5.6: la tabla está cifrada si el resultado contiene
BLOCK_FORMAT=ENCRYPTED.
Riesgo de la clave personalizada
Cuando se usa una clave personalizada, la disponibilidad de la clave determina directamente la disponibilidad del clúster. El clúster dejará de estar disponible si ocurre alguna de las siguientes situaciones:
La clave se deshabilita en KMS
Se programa la eliminación de la clave en KMS
Se elimina el material de la clave en KMS
Se revoca la autorización de PolarDB para acceder a KMS
Preguntas frecuentes
¿Qué impacto tiene habilitar TDE en mi negocio?
Al habilitar TDE se reinicia el clúster, lo que provoca una breve interrupción del servicio. Programe la operación fuera del horario de mayor demanda. En cargas de trabajo con uso intensivo de E/S, espere una ligera sobrecarga de rendimiento por las operaciones de cifrado y descifrado.
¿Qué problema de seguridad resuelve TDE?
TDE protege los datos en reposo dentro del disco. Evita que usuarios no autorizados lean los archivos de la base de datos directamente desde el almacenamiento. Por ejemplo, si se extrae el medio físico o se accede a los archivos de almacenamiento fuera del motor de base de datos. Esta protección resulta completamente transparente para las aplicaciones.
¿Puedo obligar a los usuarios de RAM a habilitar TDE al crear un clúster?
Sí. Configure una RAM policy para exigir la habilitación de TDE cuando los usuarios de RAM creen un clúster mediante la consola o la API.
Pasos siguientes
Referencia de la API
|
API |
Descripción |
|
Consulta la configuración de TDE de un clúster de PolarDB |
|
|
Enumera las claves personalizadas de un clúster de PolarDB |
|
|
Comprueba si existe una clave de KMS |
|
|
Habilita TDE para un clúster de PolarDB |