Cifrado de datos en reposo para Amazon OpenSearch Service
Los dominios de OpenSearch Service ofrecen cifrado de datos en reposo, una característica de seguridad que ayuda a prevenir el acceso no autorizado a los datos. La característica utiliza AWS Key Management Service (AWS KMS) para almacenar y administrar sus claves de cifrado y el algoritmo estándar de cifrado avanzado con claves de 256 bits (AES-256) para realizar el cifrado. Si está habilitada, la característica cifra los siguientes aspectos de un dominio:
-
Todos los índices (incluidos los de almacenamiento UltraWarm)
-
Registros de OpenSearch
-
Archivos de intercambio
-
Todos los demás datos del directorio de la aplicación
-
Instantáneas automatizadas
Los siguientes elementos no se cifran cuando habilita el cifrado de datos en reposo, pero puede realizar pasos adicionales para protegerlos:
-
Instantáneas manuales: actualmente, no puede utilizar claves de AWS KMS para cifrar instantáneas manuales. No obstante, puede utilizar el cifrado del lado del servidor con claves administradas por S3 o claves de KMS para cifrar el bucket que utiliza como repositorio de instantáneas. Para obtener instrucciones, consulte Registrar un repositorio de instantáneas manuales.
-
Registros lentos y registros de errores: si publica registros y desea cifrarlos, puede cifrar su grupo de registros de CloudWatch Logs con la misma clave de AWS KMS que utiliza para el dominio de OpenSearch Service. Para obtener más información, consulte Cifrar datos de registro en Registros de CloudWatch mediante AWS Key Management Service en la Guía del usuario de Registros de Amazon CloudWatch.
nota
No puede habilitar el cifrado en reposo en un dominio existente si UltraWarm o el almacenamiento en frío están habilitados en el dominio. Primero debe deshabilitar UltraWarm o el almacenamiento en frío, habilitar el cifrado en reposo y, a continuación, volver a habilitar UltraWarm o el almacenamiento en frío. Si desea retener los índices en UltraWarm o en almacenamiento en frío, debe moverlos a un almacenamiento en caliente antes de deshabilitar UltraWarm o almacenamiento en frío.
OpenSearch Service solo admite claves de cifrado de KMS simétricas, no asimétricas. Para conocer cómo crear claves simétricas, consulte Crear una clave de KMS en la Guía para desarrolladores de AWS Key Management Service.
Independientemente de si el cifrado en reposo está habilitado, todos los dominios cifran automáticamente paquetes personalizados con claves administradas por AES-256 y OpenSearch Service.
Permisos
Para utilizar la consola de OpenSearch Service a fin de configurar el cifrado de datos en reposo, debe contar con permisos de lectura para AWS KMS, como la siguiente política con base en identidades:
Si desea utilizar una clave que no sea la de AWS, también debe disponer de permisos a fin de crear concesiones para la clave. Estos permisos normalmente suelen adoptar la forma de una política con base en recursos que especifica al crear la clave.
Si desea conservar la clave exclusiva para OpenSearch Service, puede agregar la condición kms:ViaService a esa política de claves:
"Condition": { "StringEquals": { "kms:ViaService": "es.us-west-1.amazonaws.com" }, "Bool": { "kms:GrantIsForAWSResource": "true" } }
Para obtener más información, consulte Políticas de claves en AWS KMS en la Guía para desarrolladores de AWS Key Management Service.
Habilitar el cifrado de datos en reposo
El cifrado de datos en reposo en dominios nuevos requiere la versión 5.1 de OpenSearch o Elasticsearch o versiones posteriores. Para habilitarlo en dominios existentes, se requiere la versión 6.7 de OpenSearch o Elasticsearch o versiones posteriores.
Para habilitar el cifrado de los datos en reposo (consola)
-
Abra el dominio en la consola de AWS, a continuación, elija Actions (Acciones) y Edit security configuration (Editar la configuración de seguridad).
-
En Cifrado, seleccione Habilitar el cifrado de datos en reposo.
-
Seleccione una clave AWS KMS para usar y, a continuación, seleccione Guardar cambios.
También puede habilitar el cifrado a través de la API de configuración. La siguiente solicitud permite el cifrado de datos en reposo en un dominio existente:
{ "ClusterConfig":{ "EncryptionAtRestOptions":{ "Enabled": true, "KmsKeyId":"arn:aws:kms:us-east-1:123456789012:alias/my-key" } } }
Clave KMS desactivada o eliminada
Si desactiva o elimina la clave que utilizó para cifrar un dominio, el dominio deja de estar accesible. OpenSearch Service le envía una notificación informándole de que no puede acceder a la clave KMS. Vuelva a habilitar la clave inmediatamente para acceder a su dominio.
El equipo del Servicio de OpenSearch no puede ayudarte a recuperar tus datos si tu clave se ha borrado. AWS KMS borra las claves sólo después de un periodo de espera de al menos siete días. Si su clave está pendiente de eliminación, cancele la eliminación o tome una instantánea manual del dominio para evitar la pérdida de datos.
Deshabilitar el cifrado de datos en reposo
Después de configurar un dominio para cifrar los datos en reposo, no puede desactivar la configuración. En su lugar, puede realizar una instantánea manual del dominio existente, crear otro dominio, migrar los datos y eliminar el dominio antiguo.
Monitorear dominios que cifran los datos en reposo
Los dominios que cifran los datos en reposo tienen dos métricas adicionales: KMSKeyError y KMSKeyInaccessible. Estas métricas solo aparecen si el dominio se encuentra con un problema con la clave de cifrado. Para obtener una descripción completa de estas métricas, consulte Métricas de clúster. Puede verlas con la consola de OpenSearch Service o la consola de Amazon CloudWatch.
sugerencia
Cada métrica representa un problema importante para un dominio, por lo que recomendamos que cree alarmas de CloudWatch para ambas. Para obtener más información, consulte Alarmas de CloudWatch recomendadas para Amazon OpenSearch Service.
Otras consideraciones
-
La rotación automática de claves conserva las propiedades de sus claves de AWS KMS, por lo que la rotación no tiene efecto sobre su capacidad de acceder a los datos de OpenSearch. Los dominios cifrados de OpenSearch Service no admiten la rotación manual de claves, lo que implica la creación de una nueva clave y la actualización de cualquier referencia a la antigua clave. Para obtener más información, consulte Rotar claves de AWS KMS en la Guía para desarrolladores de AWS Key Management Service.
-
Algunos tipos de instancias no admiten el cifrado de datos en reposo. Para obtener más información, consulte Tipos de instancia compatibles con Amazon OpenSearch Service.
-
Los dominios que cifran los datos en reposo utilizan otro nombre de repositorio para sus instantáneas automatizadas. Para obtener más información, consulte Restaurar instantáneas.
-
Si bien recomendamos encarecidamente habilitar el cifrado en reposo, puede agregar sobrecarga de CPU adicional y unos pocos milisegundos de latencia. Sin embargo, la mayoría de los casos de uso no son sensibles a estas diferencias y la magnitud del impacto depende de la configuración del clúster, los clientes y el perfil de uso.