Cifrado de Azure Data Factory con claves administradas por el cliente

SE APLICA A: Azure Data Factory Azure Synapse Analytics

Sugerencia

Pruebe Data Factory en Microsoft Fabric, una solución de análisis todo en uno para empresas. Microsoft Fabric abarca todo, desde el movimiento de datos hasta la ciencia de datos, el análisis en tiempo real, la inteligencia empresarial y los informes. Obtenga información sobre cómo iniciar una nueva evaluación gratuita.

Azure Data Factory cifra los datos en reposo, incluidas las definiciones de entidades y los datos almacenados en caché mientras las ejecuciones están en curso. De forma predeterminada, los datos se cifran con una clave administrada por Microsoft que se genera aleatoriamente y que se asigna de forma única a la factoría de datos. Para reforzar aún más las medidas de seguridad, ahora puede habilitar Bring Your Own Key (BYOK) con la característica de claves administradas por el cliente de Azure Data Factory. Cuando se especifica una clave administrada por el cliente, Data Factory usa tanto la clave del sistema de la factoría como la CMK para cifrar los datos del cliente. Si falta alguna de ellas, se deniega el acceso a los datos y a la factoría.

Azure Key Vault es necesario para almacenar las claves administradas por el cliente. Puede crear sus propias claves y almacenarlas en un almacén de claves, o puede usar las API de Azure Key Vault para generarlas. Key Vault y Azure Data Factory deben estar en el mismo inquilino de Microsoft Entra y en la misma región, pero pueden estar en distintas suscripciones. Para obtener más información sobre Azure Key Vault, consulte ¿Qué es Azure Key Vault?

Acerca de las claves administradas por el cliente

En el siguiente diagrama se muestra cómo Data Factory usa Microsoft Entra ID y Azure Key Vault para realizar solicitudes con la clave administrada por el cliente:

Diagram showing how customer-managed keys work in Azure Data Factory.

En la lista siguiente se explican los pasos numerados del diagrama:

  1. Un administrador de Azure Key Vault concede permisos a las claves de cifrado para la identidad administrada que está asociada a la instancia de Data Factory.
  2. Un administrador de Data Factory habilita la característica de claves administradas por el cliente en la factoría.
  3. Data Factory usa la identidad administrada que está asociada a la factoría para autenticar el acceso a Azure Key Vault mediante Microsoft Entra ID
  4. Data Factory encapsula la clave de cifrado de la factoría con la clave de cliente de Azure Key Vault.
  5. En operaciones de lectura y escritura, Data Factory envía solicitudes a Azure Key Vault para desencapsular la clave de cifrado de la cuenta con el fin de realizar operaciones de cifrado y descifrado.

Hay dos maneras de incorporar el cifrado de claves administradas por el cliente a las factorías de datos. Una es en el momento de creación de la fábrica en Azure Portal y el otro es tras la creación de la fábrica, en la interfaz de usuario de Data Factory.

Requisitos previos: configuración de Azure Key Vault y generación de las claves

Habilitación de Eliminación temporal y No purgar en Azure Key Vault

Para usar las claves administradas por el cliente con Data Factory, es necesario establecer dos propiedades en Key Vault: Eliminación temporal y No purgar. Estas propiedades se pueden habilitar mediante PowerShell o la CLI de Azure en un almacén de claves nuevo o existente. Para obtener información sobre cómo habilitar estas propiedades en un almacén de claves existente, consulte Administración de la recuperación de Azure Key Vault con eliminación temporal y protección contra purga.

Si va a crear una instancia de Azure Key Vault a través de Azure Portal, las propiedades Eliminación temporal y No purgan se pueden habilitar de la siguiente manera:

Screenshot showing how to enable Soft Delete and Purge Protection upon creation of Key Vault.

Concesión a Data Factory de acceso a Azure Key Vault

Asegúrese de que Azure Key Vault y Azure Data Factory estén en el mismo inquilino de Microsoft Entra y en la misma región. Desde el control de acceso de Azure Key Vault, conceda los permisos siguientes a la factoría de datos: Obtener, Desencapsular clave y Encapsular clave. Estos permisos son necesarios para habilitar las claves administradas por el cliente en Data Factory.

Generación o carga de la clave administrada por el cliente en Azure Key Vault

Puede crear sus propias claves y almacenarlas en un almacén de claves. O bien, usar las API de Azure Key Vault para generar las claves. Solo se admiten las claves RSA con cifrado de Data Factory. También se admite RSA-HSM. Para más información, consulte el artículo About keys, secrets, and certificates (Claves, secretos y certificados).

Screenshot showing how to generate Customer-Managed Key.

Habilitar claves administradas del cliente

Tras la creación de la factoría en la interfaz de usuario de Data Factory

En esta sección se describe el proceso para agregar el cifrado de claves administradas por el cliente a la interfaz de usuario de Data Factory tras crear la factoría.

Nota

Una clave administrada por el cliente solo se puede configurar en una factoría de datos vacía. La factoría de datos no puede contener recursos, como servicios vinculados, canalizaciones y flujos de datos. Se recomienda habilitar la clave administrada por el cliente justo después de la creación de la factoría.

Importante

Este enfoque no funciona con factorías habilitadas para redes virtuales administradas. Considere la ruta alternativa si desea cifrar esas factorías.

  1. Asegúrese de que la instancia de Managed Service Identity (MSI) de la factoría de datos tiene los permisos Obtener, Desencapsular clave y Encapsular clave en Key Vault.

  2. Asegúrese de que la instancia de Data Factory esté vacía. La factoría de datos no puede contener recursos como servicios vinculados, canalizaciones y flujos de datos. Por ahora, la implementación de una clave administrada por el cliente en una factoría que no esté vacía producirá un error.

  3. Para buscar el URI de la clave en Azure Portal, vaya a Azure Key Vault y seleccione la opción de configuración Claves. Seleccione la clave deseada y haga clic para ver sus versiones. Seleccione una de ellas para ver su configuración.

  4. Copie el valor del campo Identificador de clave, que proporciona el URI. Screenshot of getting key URI from Key Vault.

  5. Inicie el portal de Azure Data Factory y, mediante la barra de navegación de la izquierda, salte al Portal de administración de Data Factory.

  6. Haga clic en el icono de la clave administrada por el cliente. Screenshot how to enable Customer-managed Key in Data Factory UI.

  7. Escriba el URI de la clave administrada por el cliente que copió anteriormente.

  8. Haga clic en Guardar; el cifrado de claves administradas por el cliente se habilita para Data Factory.

Durante la creación de la factoría en Azure Portal

En esta sección se explican los pasos para agregar el cifrado de claves administradas por el cliente en Azure Portal durante la implementación de la factoría.

Para cifrar la factoría, Data Factory debe recuperar primero la clave administrada por el cliente de Key Vault. Dado que la implementación de la factoría todavía está en curso, Managed Service Identity (MSI) aún no está disponible para autenticarse mediante Key Vault. Por lo tanto, para usar este enfoque, el cliente debe asignar una identidad administrada asignada por el usuario (UA-MI) a la factoría de datos. Asumiremos los roles definidos en la identidad UA-MI y nos autenticaremos mediante Key Vault.

Para obtener más información sobre la identidad administrada asignada por el usuario, consulte Tipos de identidad administrados y Asignación de un rol a una identidad administrada asignada por el usuario.

  1. Asegúrese de que la identidad administrada asignada por el usuario (UA-MI) tiene los permisos Obtener, Desencapsular clave y Encapsular clave en Key Vault.

  2. En la pestaña Opciones avanzadas, active la casilla Enable encryption using a customer managed key (Habilitar el cifrado mediante una clave administrada por el cliente)Screenshot of Advanced tab for data factory creation experience in Azure portal.

  3. Proporcione la URL de la clave administrada por el cliente almacenada en Key Vault.

  4. Seleccione una identidad administrada asignada por el usuario adecuada para autenticarse mediante Key Vault.

  5. Siga adelante con la implementación de la factoría.

Actualización de la versión de la clave

Al crear una versión de una clave, actualice la factoría de datos para que use esta nueva versión. Siga los mismos pasos que se describen en la sección sobre la interfaz de usuario de Data Factory, que incluye:

  1. Busque el URI de la nueva versión de la clave en el portal de Azure Key Vault.

  2. Vaya a la opción Clave administrada por el cliente.

  3. Reemplace y pegue el URI de la nueva clave.

  4. Haga clic en Guardar; Data Factory ahora se cifrará con la nueva versión de la clave.

Uso de una clave distinta

Para cambiar la clave usada para el cifrado de Data Factory, debe actualizar manualmente la configuración en Data Factory. Siga los mismos pasos que se describen en la sección sobre la interfaz de usuario de Data Factory, que incluye:

  1. Busque el URI de la nueva clave en el portal de Azure Key Vault.

  2. Vaya a la opción Clave administrada por el cliente.

  3. Reemplace y pegue el URI de la nueva clave.

  4. Haga clic en Guardar; Data Factory ahora se cifrará con la nueva clave.

Deshabilitación de las claves administradas por el cliente

De manera intencionada, una vez habilitada la característica de claves administradas por el cliente, no se puede quitar el paso de seguridad adicional. Para cifrar la factoría y los datos, siempre se esperará una clave proporcionada por el cliente.

Clave administrada por el cliente para la integración continua y entrega continua

De forma predeterminada, la configuración de CMK no se incluye en la plantilla de Azure Resource Manager de fábrica. Para incluir la configuración del cifrado de claves administradas por el cliente en la plantilla de Resource Manager para la integración continua y entrega continua (CI/CD):

  1. Asegurarse de que la fábrica está en modo Git
  2. Vaya al portal de administración, a la sección Clave administrada por el cliente
  3. Active la opción Include in ARM template (Incluir en la plantilla de Resource Manager).

Screenshot of including customer managed key setting in ARM template.

La siguiente configuración se agregará en la plantilla de Resource Manager. Estas propiedades se pueden parametrizar en canalizaciones de integración y entrega continuas mediante la edición de la configuración de los parámetros de Azure Resource Manager.

Screenshot of including customer managed key setting in Azure Resource Manager template.

Nota:

Al agregar la configuración de cifrado a las plantillas de Resource Manager, se agrega una configuración de fábrica que invalidará otras opciones de configuración de fábrica, como las configuraciones de Git, en otros entornos. Si tiene esta configuración habilitada en un entorno con privilegios elevados, como UAT o PROD, consulte Parámetros globales en CI/CD.

Consulte los tutoriales para obtener información acerca del uso de Data Factory en otros escenarios.