Supervisa el cifrado en tránsito de EMR los clústeres de Amazon en el momento del lanzamiento - Recomendaciones de AWS

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.

Supervisa el cifrado en tránsito de EMR los clústeres de Amazon en el momento del lanzamiento

Creado por Susanne Kangnoh () AWS

Entorno: producción

Tecnologías: análisis; macrodatos CloudNative; seguridad, identidad y cumplimiento

Carga de trabajo: código abierto

AWSservicios: AmazonEMR; Amazon SNS AWS CloudTrail; Amazon CloudWatch

Resumen

Este patrón proporciona un control de seguridad que monitorea EMR los clústeres de Amazon en el momento del lanzamiento y envía una alerta si no se ha habilitado el cifrado en tránsito. 

Amazon EMR es un servicio web que facilita la ejecución de marcos de big data, como Apache Hadoop, para procesar y analizar datos. Amazon EMR le permite procesar grandes cantidades de datos de forma rentable mediante la ejecución de mapas y la reducción de los pasos en paralelo.

El cifrado de datos evita que usuarios no autorizados accedan o lean los datos en reposo o los datos en tránsito. Los datos en reposo se refieren a los datos que se almacenan en medios como un sistema de archivos local en cada nodo, el Sistema de archivos distribuido de Hadoop (HDFS) o el Sistema de EMR archivos (EMRFS) a través de Amazon Simple Storage Service (Amazon S3). Los datos en tránsito se refieren a los datos que viajan por la red y están en movimiento entre un trabajo y otro. El cifrado en tránsito admite funciones de cifrado de código abierto para Apache Spark, Apache, Apache HadoopTEZ, Apache y Presto. HBase Para habilitar el cifrado, cree una configuración de seguridad desde la interfaz de línea de AWS comandos (AWSCLI), la consola o AWS SDKs especifique la configuración de cifrado de datos. Puede proporcionar los artefactos de cifrado para el cifrado en tránsito de estas dos maneras:

  • Cargando un archivo comprimido de certificados en Amazon S3.

  • Haciendo referencia a una clase Java personalizada que proporciona artefactos de cifrado.

El control de seguridad que se incluye en este patrón monitorea API las llamadas y genera un evento de Amazon CloudWatch Events en la RunJobFlowacción. El evento llama a una función AWS Lambda, que ejecuta un script de Python. La función obtiene el ID del EMR clúster a partir de la JSON entrada del evento y realiza las siguientes comprobaciones para determinar si hay una infracción de seguridad:

  • Comprueba si el EMR clúster tiene una configuración de seguridad EMR específica de Amazon.

  • Si el clúster tiene una configuración de seguridad, comprueba si el cifrado en tránsito está habilitado.

  • Si el clúster no tiene una configuración de seguridad, envía una alerta a la dirección de correo electrónico que proporciones mediante Amazon Simple Notification Service (AmazonSNS). La notificación especifica el nombre del EMR clúster, los detalles de la infracción, AWS la información de la región y la cuenta y la AWS Lambda (ARNAmazon Resource Name) de la que proviene la notificación.

Requisitos previos y limitaciones

Requisitos previos 

  • Una cuenta de AWS activa.

  • Un bucket de S3 para cargar el código de Lambda que se proporciona con este patrón.

  • Una dirección de correo electrónico en la que desee recibir las notificaciones de infracciones.

  • Amazon permite el EMR registro para acceder a todos los API registros.

Limitaciones

  • Este control de detección es regional y debe implementarse en cada AWS región que desee monitorear.

Versiones de producto

  • Amazon EMR versión 4.8.0 o posterior.

Arquitectura

Arquitectura de flujo de trabajo

Arquitectura que monitorea API las llamadas y genera un evento en la RunJobFlow acción.

Automatizar y escalar

Herramientas

AWSservicios

  • Amazon EMR: Amazon EMR es una plataforma de clústeres gestionada que simplifica la ejecución de marcos de big data, como Apache Hadoop y Apache Spark, AWS para procesar y analizar grandes cantidades de datos. Mediante el uso de estos marcos de trabajo y proyectos de código abierto relacionados, puede procesar datos para fines de análisis y cargas de trabajo de inteligencia empresarial. Además, puede utilizar Amazon EMR para transformar y mover grandes cantidades de datos dentro y fuera de otros almacenes de AWS datos y bases de datos, como Amazon S3 y Amazon DynamoDB.

  • AWSCloudformation: le AWS CloudFormation ayuda a modelar y configurar sus AWS recursos, a aprovisionarlos de forma rápida y coherente y a administrarlos 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 varias AWS cuentas y AWS regiones.

  • AWSCloudwatch Events: Amazon CloudWatch Events ofrece una transmisión casi en tiempo real de eventos del sistema que describen los cambios en los AWS recursos. CloudWatch Events se da cuenta de los cambios operativos a medida que se producen y toma las medidas correctivas necesarias, mediante el envío de mensajes en respuesta al entorno, la activación de funciones, la realización de cambios y la recopilación de información sobre el estado.

  • AWSLambda: AWS Lambda es un servicio informático que admite la ejecución de 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.

  • AWSSNS— Amazon Simple Notification Service (AmazonSNS) 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

Este patrón incluye un adjunto con dos archivos:

  • EMRInTransitEncryption.zip es un archivo comprimido que incluye el control de seguridad (código de Lambda).

  • EMRInTransitEncryption.ymles una CloudFormation plantilla que implementa el control de seguridad.

Consulte la sección Epics para obtener información sobre cómo usar estos archivos.

Epics

TareaDescripciónHabilidades requeridas

Cargue el código en un bucket de S3.

Cree un bucket de S3 nuevo o utilice un bucket de S3 ya existente para cargar el archivo adjunto EMRInTransitEncryption.zip (código de Lambda). Este depósito debe estar en la misma AWS región que la CloudFormation plantilla y los recursos que desee evaluar.

Arquitecto de la nube

Implemente la CloudFormation plantilla.

Abre la consola de Cloudformation en la misma AWS región que el bucket de S3 e implementa el EMRInTransitEncryption.yml archivo que se incluye en el archivo adjunto. En la siguiente Epic, proporcione los valores de los parámetros.

Arquitecto de la nube,
TareaDescripciónHabilidades 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 la AWS misma región que la plantilla y CloudFormation el recurso que se van a evaluar.

Arquitecto de la nube

Proporcione la clave de S3.

Especifique la ubicación del archivo .zip de código de Lambda en su bucket de S3, sin barras diagonales iniciales (por ejemplo, EMRInTransitEncryption.zip o controls/EMRInTransitEncryption.zip).

Arquitecto de la nube

Proporcione una dirección de correo electrónico.

Especifique 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 de los registros de Lambda. Info designa mensajes informativos detallados sobre el progreso de la aplicación y solo debe usarse para la depuración. Error designa los eventos de error que aún podrían permitir que la aplicación siguiera ejecutándose. Warning designa situaciones potencialmente dañinas.

Arquitecto de la nube
TareaDescripciónHabilidades requeridas

Confirme la suscripción de correo electrónico.

Cuando la CloudFormation plantilla se implementa correctamente, envía un mensaje de correo electrónico de suscripción a la dirección de correo electrónico que proporcionó. Debe confirmar esta suscripción de correo electrónico para recibir notificaciones.                                                      

Arquitecto de la nube

Recursos relacionados

Conexiones

Para acceder al contenido adicional asociado a este documento, descomprima el archivo: attachment.zip