

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Supervise ElastiCache los clústeres de Amazon para comprobar el cifrado en reposo
<a name="monitor-amazon-elasticache-clusters-for-at-rest-encryption"></a>

*Abhishek Agawane, Amazon Web Services*

## Resumen
<a name="monitor-amazon-elasticache-clusters-for-at-rest-encryption-summary"></a>

Amazon ElastiCache es un servicio de Amazon Web Services (AWS) que proporciona una solución de almacenamiento en caché rentable, escalable y de alto rendimiento para distribuir un almacén de datos en memoria o un entorno de caché en la nube. Recupera datos de almacenes de datos en memoria de alto rendimiento y baja latencia. Esta funcionalidad lo convierte en una opción popular para casos de uso en tiempo real, como el almacenamiento en caché, los almacenes de sesiones, los juegos, los servicios geoespaciales, los análisis en tiempo real y las colas. ElastiCache ofrece los almacenes de datos de Redis y Memcached, los cuales ofrecen tiempos de respuesta inferiores a un milisegundo.

El cifrado de datos ayuda a evitar que usuarios no autorizados lean datos confidenciales disponibles en sus clústeres Redis y sus sistemas de almacenamiento en caché asociados. Esto incluye los datos guardados en medios persistentes, conocidos como *datos en reposo* y datos que pueden ser interceptados cuando recorren la red entre los clientes y los servidores de caché, conocidos como *datos en tránsito*.

Puede habilitar el cifrado en reposo para ElastiCache (Redis OSS) al crear un grupo de replicación configurando el parámetro en. `AtRestEncryptionEnabled` **`true`** Cuando este parámetro está habilitado, cifra el disco durante las operaciones de sincronización, copia de seguridad e intercambio, y cifra las copias de seguridad almacenadas en Amazon Simple Storage Service (Amazon S3). No puede habilitar el cifrado en reposo en un grupo de reproducción existente. Cuando cree un grupo de replicación, puede activar la encriptación en reposo de estas dos formas:
+ Al seleccionar la opción **Predeterminado**, que utiliza el cifrado administrado por el servicio en reposo.
+ Mediante una clave gestionada por el cliente y proporcionando el ID de clave o el nombre de recurso de Amazon (ARN) de AWS Key Management Service (AWS KMS).

Este patrón proporciona un control de seguridad que supervisa las llamadas a la API y genera un evento de Amazon EventBridge Events en la `CreateReplicationGroup` operación. Este evento llama a una AWS Lambda función que ejecuta un script de Python. La función obtiene el ID del grupo de replicación de la entrada JSON del evento y realiza las siguientes comprobaciones para determinar si hay un clúster sin cifrar:
+ Comprueba si la `AtRestEncryptionEnabled`**** clave existe.
+ Si `AtRestEncryptionEnabled`**** existe, comprueba el valor para ver si existe`true`.
+ Si el `AtRestEncryptionEnabled`**** valor está establecido en`false`, establece una variable que rastrea las infracciones y envía un mensaje de infracción a la dirección de correo electrónico que usted proporcione, mediante una notificación de Amazon Simple Notification Service (Amazon SNS).

## Requisitos previos y limitaciones
<a name="monitor-amazon-elasticache-clusters-for-at-rest-encryption-prereqs"></a>

**Requisitos previos **
+ Una activa Cuenta de AWS.
+ Un bucket de S3 para cargar el código de Lambda proporcionado.
+ Una dirección de correo electrónico en la que desee recibir las notificaciones de infracciones.
+ ElastiCache registro activado, para acceder a todos los registros de la API.

**Limitaciones**
+ Este control de detección es regional y debe implementarse en todos los lugares Región de AWS que desee supervisar.
+ El control es compatible con los grupos de replicación que se ejecutan en una nube privada virtual (VPC).
+ El control admite grupos de replicación que ejecutan los siguientes tipos de nodos:
  + R7g, R6gd, R6g, R5, R4 y R3
  + M7g, M6g, M5, M4 y M3
  + T4g, T3, T2
  + C7gn

**Versiones de producto**
+ Soporta ElastiCache (Redis OSS) la versión 3.2.6 o posterior y Valkey 7.2 o posterior

## Arquitectura
<a name="monitor-amazon-elasticache-clusters-for-at-rest-encryption-architecture"></a>

**Arquitectura de flujo de trabajo**

![\[Flujo de trabajo para la supervisión de clústeres. ElastiCache\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/images/pattern-img/2917ebc2-3cfe-4530-887d-2c7eb7085453/images/59a36936-e9a8-4f12-a49d-776ff7959053.png)


1. El usuario lanza un grupo de ElastiCache replicación mediante una llamada a la API Consola de administración de AWS, la AWS Command Line Interface (AWS CLI) o una llamada a la API.

1. ElastiCache genera EventBridge eventos cuando se llama a la `CreateReplicationGroup ` API.

1. Una EventBridge regla activa y llama a la función Lambda para comprobar el cumplimiento.

1. La función Lambda procesa el evento y comprueba si el cifrado en reposo está habilitado en el clúster. ElastiCache 

1. Si se detecta una infracción de cifrado, la función Lambda publica un mensaje de notificación en un tema de SNS.

1. Amazon SNS envía una notificación por correo electrónico a los administradores sobre la infracción de conformidad con el cifrado.

**Automatización y escala**
+ Si la está utilizando AWS Organizations, puede utilizarla [AWS CloudFormation StackSets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html)para implementar esta plantilla en varias cuentas que desee supervisar.

## Tools (Herramientas)
<a name="monitor-amazon-elasticache-clusters-for-at-rest-encryption-tools"></a>

**Servicios de AWS**
+ [Amazon ElastiCache](https://docs.aws.amazon.com/elasticache/) facilita la configuración, la administración y el escalado de los entornos de caché en memoria distribuidos en. Nube de AWS Proporciona una caché en memoria rentable, redimensionable y de alto rendimiento, a la vez que elimina la complejidad asociada a la implementación y la administración de un entorno de caché distribuida. ElastiCache funciona con los motores Redis y Memcached.
+ [AWS CloudFormation](https://aws.amazon.com/cloudformation/)le ayuda a modelar y configurar sus AWS recursos, a aprovisionarlos de forma rápida y coherente y a gestionarlos durante todo su ciclo de vida. Facilita poder usar una plantilla para describir los recursos y sus dependencias, y lanzarlos y configurarlos juntos como una pila, en lugar de administrarlos de forma individual. Puede gestionar y aprovisionar pilas en varios Cuentas de AWS y. Regiones de AWS
+ [Amazon EventBridge](https://docs.aws.amazon.com/eventbridge/) ofrece un flujo casi en tiempo real de los eventos del sistema que describen los cambios en AWS los recursos. EventBridge se percata de los cambios operativos a medida que se producen y toma las medidas correctivas necesarias, enviando mensajes para responder al entorno, activando funciones, realizando cambios y recopilando información de estado.
+ [AWS Lambda](https://aws.amazon.com/lambda/) es un servicio de computación que permite ejecutar código sin aprovisionar ni administrar servidores. Lambda ejecuta su código solo cuando es necesario y escala de manera automática, desde unas pocas solicitudes por día hasta miles por segundo. Solo pagará por el tiempo de computación que consuma, no se aplican cargos cuando el código no se está ejecutando. 
+ [Amazon SNS](https://aws.amazon.com/sns/) coordina y gestiona el envío de mensajes entre editores y clientes, incluidos los servidores web y las direcciones de correo electrónico. Los suscriptores reciben todos los mensajes publicados de los temas a los que están suscritos y todos los suscriptores de un tema reciben los mismos mensajes.

**Código**

El código de este patrón está disponible en el repositorio de [cifrado GitHub Monitor Amazon ElastiCache Clusters for at-rest](https://github.com/aws-samples/sample-Monitor_Amazon_ElastiCache_clusters_for_at-rest_encryption). Consulta la [sección de Epics](#monitor-amazon-elasticache-clusters-for-at-rest-encryption-epics) para obtener información sobre cómo usar los archivos del repositorio.

## Prácticas recomendadas
<a name="monitor-amazon-elasticache-clusters-for-at-rest-encryption-best-practices"></a>

**Implementación**
+ Asegúrese de registrar las AWS CloudTrail llamadas a la ElastiCache API antes de implementar este control.
+ Se trata de un control regional; despliega el control en cada Región de AWS lugar donde lo utilices ElastiCache.
+ Valide la solución en dev/test los entornos antes de implementarla en producción.

**Seguridad**
+ Para mejorar el control de las claves de cifrado, utilice las claves KMS administradas por el cliente. 
+ Revise los permisos AWS Identity and Access Management (IAM) para garantizar el acceso con privilegios mínimos para la función de ejecución de Lambda.
+ Configure alertas para los mensajes que estén en la cola de mensajes muertos.

**Operaciones**
+ Establezca una retención de registros adecuada para equilibrar las necesidades de cumplimiento con los costos.
+ Ajuste la simultaneidad reservada de Lambda para ajustarla en función de ElastiCache su frecuencia de creación.
+ Suscriba varias direcciones de correo electrónico a Amazon SNS para recibir notificaciones de equipo.

**Supervisión**
+ Revisa CloudWatch las alarmas de Amazon para asegurarte de que los umbrales de alarma se ajustan a tus necesidades operativas.
+ Supervise periódicamente la duración de la ejecución de las métricas Lambda y las tasas de error.
+ Audite las infracciones con regularidad para revisar las notificaciones de conformidad con el cifrado.

## Epics
<a name="monitor-amazon-elasticache-clusters-for-at-rest-encryption-epics"></a>

### Implementar el control de seguridad
<a name="deploy-the-security-control"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Descarga el código de GitHub. | Clona o descarga el [repositorio de código](https://github.com/aws-samples/sample-Monitor_Amazon_ElastiCache_clusters_for_at-rest_encryption) desde GitHub. El repositorio contiene los archivos `index.py` y`elasticache_encryption_at_rest.yml`. | Arquitecto de la nube | 
| Cree paquetes de despliegue de Lambda. | Cree dos archivos.zip a partir del código de Python:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/monitor-amazon-elasticache-clusters-for-at-rest-encryption.html) | Arquitecto de la nube | 
| Cargue el código en un bucket de S3. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/monitor-amazon-elasticache-clusters-for-at-rest-encryption.html) | Arquitecto de la nube  | 
| Implemente la CloudFormation plantilla. | Abre la [CloudFormation consola](https://console.aws.amazon.com/cloudformation/) en el Región de AWS mismo lugar que el bucket de S3 e implementa el `elasticache_encryption_at_rest.yml` archivo que se proporciona en el repositorio de código. En la siguiente Epic, proporcione los valores de los parámetros. | Arquitecto de la nube  | 

### Complete los parámetros de la CloudFormation plantilla
<a name="complete-the-parameters-in-the-cloudformation-template"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Proporcione el nombre del bucket de S3. | Escriba el nombre del bucket de S3 que ha creado o seleccionado en la primera Epic. Este bucket de S3 contiene el archivo.zip del código Lambda y debe estar en el Región de AWS mismo lugar que la plantilla y CloudFormation el recurso que se van a evaluar.  | Arquitecto de la nube | 
| Proporcione la clave de S3. | Proporcione la ubicación del archivo .zip del código de Lambda en su bucket de S3, sin barras diagonales iniciales (por ejemplo, `ElasticCache-EncryptionAtRest.zip` o `controls/ElasticCache-EncryptionAtRest.zip`). | Arquitecto de la nube  | 
| Proporcione una dirección de correo electrónico. | Proporcione una dirección de correo electrónico activa en la que desee recibir notificaciones de infracciones.  | Arquitecto de la nube | 
| Especifique un nivel de registro. | Especifique el nivel de registro y la verbosidad. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/monitor-amazon-elasticache-clusters-for-at-rest-encryption.html) | Arquitecto de la nube  | 

### Confirmar la suscripción
<a name="confirm-the-subscription"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Confirme la suscripción de correo electrónico. | Cuando la CloudFormation plantilla se implementa correctamente, envía un mensaje de suscripción a la dirección de correo electrónico que has proporcionado. Debe confirmar esta suscripción de correo electrónico para recibir notificaciones. | Arquitecto de la nube | 

## Resolución de problemas
<a name="monitor-amazon-elasticache-clusters-for-at-rest-encryption-troubleshooting"></a>


| Problema | Solución | 
| --- | --- | 
| ****La función Lambda no se ha activado | **Síntoma**: no se inicia sesión CloudWatch después de crear o modificar ElastiCache los clústeres.**Soluciones:**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/monitor-amazon-elasticache-clusters-for-at-rest-encryption.html) | 
| No hay notificaciones por correo electrónico | **Síntoma**: la función Lambda se ejecuta correctamente, pero no recibe ninguna notificación por correo electrónico.**Soluciones:**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/monitor-amazon-elasticache-clusters-for-at-rest-encryption.html) | 
| Problemas con los permisos | **Síntoma**: errores de *acceso denegado* en los registros de funciones Lambda. CloudWatch **Soluciones:**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/monitor-amazon-elasticache-clusters-for-at-rest-encryption.html) | 

## Recursos relacionados
<a name="monitor-amazon-elasticache-clusters-for-at-rest-encryption-resources"></a>
+ [Cree una pila desde la CloudFormation consola (documentación](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html))CloudFormation 
+ [Cifrado en reposo en ElastiCache (Redis OSS) (ElastiCache documentación)](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/at-rest-encryption.html)