Gestión del cifrado en Event Streams

De forma predeterminada, los datos de carga útil de mensajes en IBM® Event Streams for IBM Cloud® se cifran en reposo utilizando una clave generada aleatoriamente. Aunque este modelo de cifrado predeterminado proporciona seguridad en reposo, es posible que necesite un nivel de control más alto. Para estos casos de uso, Event Streams admite el cifrado gestionado por el cliente con los siguientes servicios de gestión de claves IBM Cloud®:

  • IBM® Key Protect for IBM Cloud® (Bring Your Own Key - BYOK) le ayuda a proporcionar claves cifradas para aplicaciones a través de los servicios de IBM Cloud. A medida que gestiona el ciclo de vida de sus claves, se beneficia de saber que éstas están protegidas por módulos de seguridad de hardware (HSM) basados en la nube con certificación FIPS 140-2 de nivel tres, que protegen contra el robo de información. Para obtener más información sobre cómo utilizar Key Protect, consulte la Guía de aprendizaje de iniciación.
  • Hyper Protect Crypto Services (Traiga sus propias claves - KYOK) es un HSM dedicado de un solo arrendatario, controlado por usted. El servicio se basa en el hardware con certificado FIPS 140-2 Nivel 4, el más alto que se ofrece en el sector de nube. Tenga en cuenta que Hyper Protect Crypto Services está obsoleto.

IBM Cloud® está realizando la transición de los servicios de gestión de claves dedicadas de Hyper Protect Crypto Services a IBM® Key Protect Dedicated. Migre las claves raíz existentes de Hyper Protect Crypto Services (HPCS) a IBM® Key Protect Dedicated (Single Tenant) antes del fin de la vida útil de HPCS (EOL) el 20 de marzo de 2027 para garantizar la disponibilidad continua del servicio. Después de esa fecha, cualquier instancia restante se dará por terminada. Para garantizar la disponibilidad y el soporte continuos del servicio, debe migrar todas las claves raíz HPCS existentes a IBM Key Protect Dedicated (Single Tenant) antes de la fecha EOL. Aprende a migrar tus claves raíz.

Estos servicios permiten el uso de una clave proporcionada por el cliente para controlar el cifrado. Al deshabilitar o eliminar esta clave, puede impedir cualquier acceso posterior a los datos almacenados por el servicio, porque ya no es posible descifrarlos.

Considere la posibilidad de utilizar llaves gestionadas por el cliente, si necesita las siguientes características:

  • Cifrado de datos en reposo controlado por su propia clave.
  • Control explícito del ciclo de vida de los datos almacenados en reposo.

Las claves gestionadas por el cliente están disponibles en el plan Enterprise y solo en clústeres creados después de octubre de 2019.

La eliminación de la clave gestionada por el cliente es irrecuperable y provoca la pérdida de todos los datos almacenados en su instancia de Event Streams.

Cifrado de mensajes para garantizar el cumplimiento de la normativa

Algunas normas reglamentarias, como PCI DSS, exigen que los datos sensibles de los mensajes (como la información de los titulares de tarjetas) se cifren durante todo su ciclo de vida: en reposo, en movimiento y en uso.

Los sistemas de archivos utilizados por Event Streams para almacenar los datos de los mensajes están encriptados, lo que los protege de accesos no autorizados. Sin embargo, cuando los mensajes pasan a través de la capa de transporte, Event Streams debe descifrar estos sistemas de archivos para procesar los mensajes. Aunque esto significa que las cargas útiles de los mensajes no están cifradas de extremo a extremo, el cifrado en tránsito y en reposo garantiza una sólida protección durante todo el ciclo de vida del mensaje, en línea con las mejores prácticas del sector.

Para garantizar que los datos confidenciales permanezcan ilegibles para cualquiera que no sean los destinatarios previstos, los clientes deben cifrar el propio mensaje a nivel de aplicación antes de enviarlo a Event Streams, una práctica conocida como cifrado a nivel de mensaje.

Lo que no está cubierto por el cifrado gestionado por el cliente

Si se selecciona la función de encriptación gestionada por el cliente, tenga en cuenta que esta encriptación sólo cubre los datos de la carga útil del mensaje. Event Streams encripta en reposo otros datos relacionados con el uso del servicio. Sin embargo, aunque estén encriptados, los datos de la carga útil que no son mensajes no se encriptan con la encriptación gestionada por el cliente. Algunos ejemplos son los metadatos del cliente, como los nombres de los temas, los datos de configuración de los temas, los esquemas almacenados en el registro de esquemas y los metadatos que se almacenan en relación con la configuración de la instancia Enterprise.

Por lo tanto, no utilice información confidencial en dichos metadatos de cliente.

¿Cómo funciona el cifrado gestionado por el cliente?

Event Streams utiliza un concepto denominado cifrado de sobres para aplicar claves gestionadas por el cliente.

El cifrado de sobre es la práctica de cifrar una clave de cifrado con otra clave de cifrado. La clave utilizada para cifrar los propios datos se conoce como una clave de cifrado de datos (DEK). La DEK propiamente dicha nunca se almacena, sino que se envuelve con una segunda clave que se conoce como clave de cifrado (KEK) para crear una DEK envuelta.

Para descifrar datos, la DEK envuelta se debe desenvolver en primer lugar para obtener la DEK. Este proceso sólo es posible accediendo a la KEK, que en este caso es la clave raíz que se almacena en Key Protect o Hyper Protect Crypto Services.

El usuario es propietario de la KEK, que crea como clave root en el servicio Hyper Protect Crypto Services o Key Protect. El servicio Event Streams no ve nunca la clave raíz (KEK). El almacenamiento, la gestión y el uso para encapsular y desencapsular la DEK se realiza por completo en el servicio de gestión de claves. Si inhabilita o suprime la clave, los datos ya no se pueden descifrar.

Habilitación de una clave gestionada por el cliente para Event Streams

Lleve a cabo los pasos siguientes para suministrar la instancia de Event Streams con el fin de utilizar una clave gestionada por el cliente:

  1. Suministre una instancia de Key Protect o Hyper Protect Crypto Services.
  2. Cree una política de autorización para permitir que el servicio de Event Streams acceda a la instancia de servicio de gestión de claves como lector. Para obtener más información, consulte Uso de autorizaciones para conceder acceso entre servicios.
  3. Cree o importe una clave raíz en la instancia de servicio de gestión de claves.
  4. Recupere el Nombre del Recurso en la Nube (CRN) de la clave utilizando la opción Ver CRN en la GUI de la instancia del servicio de gestión de claves.
  5. Suministre una instancia de Event Streams. Esta característica se admite solamente en el plan Empresa.

Si suministra a través de la consola de IBM Cloud®, seleccione una instancia de servicio de gestión de claves y, a continuación, seleccione una clave raíz desde la instancia.

Si suministra a través de CLI, utilice el mandato siguiente:

ibmcloud resource service-instance-create EVENT-STREAMS-INSTANCE-NAME messagehub ibm.message.hub.enterprise.3nodes.2tb REGION -p '{"kms_key_crn":"KMS_KEY_CRN"}'

Un clúster existente sin una clave gestionada por el cliente no se puede actualizar porque se trata de una operación destructiva que provocará la pérdida de todas las definiciones de mensajes y temas. Debe eliminar y volver a crear su instancia con una clave de cifrado.

Utilización de una clave gestionada por el cliente

Después de aprovisionar una instancia de Event Streams con una clave gestionada por el cliente, funciona con las siguientes capacidades adicionales.

Cómo evitar el acceso a los datos

Para impedir temporalmente el acceso, desactive su clave raíz. Como consecuencia, Event Streams ya no puede acceder a los datos porque ya no tiene acceso a la clave.

Para eliminar el acceso de forma permanente, elimine la clave. Sin embargo, debe tener una precaución extrema porque esta operación no se puede recuperar. Pierde el acceso a los datos almacenados en la instancia de Event Streams. No es posible recuperar estos datos.

En ambos casos, la instancia de Event Streams concluye y yo no se aceptan o se procesan las conexiones. Se genera un evento Activity Tracker para informar de la acción. Para obtener más información, consulte Sucesos de Activity Tracker.

La autorización debe mantenerse entre Event Streams y la instancia de servicio de gestión de claves en todo momento, incluso después de eliminar la instancia de servicio. Event Streams seguirá necesitando la política de servicio a servicio para eliminar el registro de la clave. Para determinar cuándo es seguro eliminar la política de servicio a servicio, compruebe los recursos asociados en la clave raíz de KMS. Si la clave raíz sigue asociada a la instancia Event Streams, deje la política en su sitio. Si bien la eliminación de esta autorización impide a Event Streams acceder a sus datos en el futuro, los datos ya utilizados siguen estando disponibles durante un periodo de tiempo.

Se le cobrará por su instancia de Event Streams hasta que la desaprovisione utilizando la consola IBM Cloud o la CLI. Estos cargos se siguen aplicando aunque haya elegido impedir el acceso a los datos.

Restauración del acceso a los datos

El acceso se puede restaurar solamente si no se ha suprimido la clave. Para restaurar el acceso, vuelva a habilitar la clave raíz. Después de un breve periodo de inicialización, se reinicia la instancia de Event Streams y se empiezan a aceptar de nuevo las conexiones. Se conservan todos los datos, sujetos a los límites de retención normales configurados en la instancia.

Se genera un suceso de Activity Tracker para informar de la acción. Para obtener más información, consulte Sucesos de Activity Tracker.

Rotación de la clave

Key Protect y Hyper Protect Crypto Services dan soporte a la rotación de claves raíz, ya sea bajo demanda o en una planificación. Al rotar la clave, Event Streams adopta la nueva clave volviendo a envolver la DEK tal como se ha descrito anteriormente en cómo funciona el cifrado gestionado por el cliente.

Se genera un suceso de Activity Tracker para informar de la acción. Para obtener más información, consulte Sucesos de Activity Tracker.

Inhabilitación del cifrado gestionado por el cliente

Después de activar el cifrado gestionado por el cliente, no es posible desactivarlo. En lugar de ello, debe suprimir la instancia de servicio y crear una instancia nueva.

Migración de Hyper Protect Crypto Services (HPCS) a Key Protect Dedicado (KP-ST)

Durante la migración de Hyper Protect Crypto Services (HPCS) a Key Protect Dedicated (KP-ST), ocurre lo siguiente:

  • Cada instancia KMS mantiene sus propias claves raíz únicas. La migración implica volver a asociar el servicio con una nueva clave raíz dedicada de IBM® Key Protect.
  • Las claves de cifrado de datos (DEK) existentes se envuelven de nuevo de forma segura.
  • Durante la transición, deben mantenerse las políticas de acceso tanto de Hyper Protect Crypto Services a Service como de Key Protect a Service.
  • Los datos cifrados no se vuelven a cifrar ni se mueven.
  • Se mantiene la disponibilidad del servicio.

Requisitos previos

Antes de iniciar la migración, asegúrese de que dispone de:

  • Una instancia Key Protect Dedicated (Single Tenant).
  • Una clave raíz creada en esa instancia Key Protect Dedicated (KP-ST).
  • Permisos para gestionar claves y políticas de acceso a servicios.

Pasos de la migración

  1. Identifique la clave raíz Hyper Protect Crypto Services existente en uso. La clave debe existir en una instancia de Hyper Protect Crypto Services y el servicio ya debe tener acceso a ella.
  2. Cree o seleccione una clave raíz dedicada en Key Protect. La clave debe estar en la instancia Key Protect Dedicated (Single Tenant) apropiada y accesible para el servicio.
  3. Cree una intención de migración que vincule las dos claves. La intención de migración asigna la clave Hyper Protect Crypto Services actual (origen) a la nueva clave Key Protect Dedicated (destino). Para obtener más información sobre la migración a Key Protect, consulte Migración de Hyper Protect Crypto Services(HPCS)a Key Protect Dedicado.
  4. Espere 1-2 días laborables para que se ejecute la migración. Event Streams reasociará y envolverá de nuevo los DEK de forma segura cuando proceda, sin volver a cifrar ni mover los datos.
  5. Verifique la finalización de la migración. Ahora el servicio debe hacer referencia a la clave raíz ST Key Protect. Key Protect La clave raíz ST debe estar visible y activa y la asociación Hyper Protect Crypto Services debe ser eliminada.