

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.

# Estudio de caso indicativo para alcanzar el vencimiento de Essential Eight el AWS
<a name="case-study"></a>

En este capítulo se presenta un caso práctico indicativo para una agencia gubernamental cuyo objetivo es que Essential Eight alcance la madurez en AWS.

**Topics**
+ [Información general del escenario y de la arquitectura](scenario.md)
+ [Ejemplo de carga de trabajo: lago de datos sin servidor](serverless-data-lake.md)
+ [Ejemplo de carga de trabajo: servicio web en contenedores](containerised-web-service.md)
+ [Ejemplo de carga de trabajo: software COTS en Amazon EC2](cots-software.md)

# Información general del escenario y de la arquitectura
<a name="scenario"></a>

La agencia gubernamental tiene tres cargas de trabajo en la Nube de AWS:
+ Un [lago de datos sin servidor](serverless-data-lake.md) que utiliza Amazon Simple Storage Service (Amazon S3) para el almacenamiento AWS Lambda y para las operaciones de extracción, transformación y carga (ETL)
+ Un [servicio web de contenedores](containerised-web-service.md) que se ejecuta en Amazon Elastic Container Service (Amazon ECS) y utiliza una base de datos de Amazon Relational Database Service (Amazon RDS).
+ Un [software comercial off-the-shelf (COTS)](cots-software.md) que se ejecuta en Amazon EC2

Un *equipo en la nube* proporciona una plataforma centralizada para la organización que ejecuta los servicios principales para el AWS medio ambiente. Un equipo de nube proporciona servicios básicos para el AWS medio ambiente. Cada carga de trabajo es responsabilidad de un *equipo de aplicaciones* distinto, también denominado *equipo de desarrolladores* o *equipo de entrega*.

## Arquitectura principal
<a name="core-architecture"></a>

El equipo de la nube ya estableció las funcionalidades siguientes en la Nube de AWS:
+ La federación de identidades AWS IAM Identity Center se vincula a su instancia de Microsoft Entra ID (anteriormente *Azure Active Directory*). La federación aplica la MFA, la caducidad automática de las cuentas de usuario y el uso de credenciales de corta duración AWS Identity and Access Management a través de funciones (IAM).
+ Se utiliza una canalización de AMI centralizada para aplicar revisiones a los sistemas operativos y las aplicaciones principales con el Generador de imágenes de EC2.
+ Amazon Inspector puede identificar las vulnerabilidades y todos los resultados de seguridad se envían a Amazon GuardDuty para su gestión centralizada.
+ Los mecanismos establecidos se utilizan para actualizar las reglas de control de las aplicaciones, responder a los eventos de ciberseguridad y revisar las vulneraciones del cumplimiento normativo.
+ AWS CloudTrail se utiliza para el registro y la supervisión.
+ Los eventos de seguridad, tales como el inicio de sesión del usuario raíz, inician las alertas. 
+ SCPs y las políticas de puntos finales de VPC establecen perímetros de datos para sus entornos. AWS 
+ SCPs impiden que los equipos de aplicaciones deshabiliten los servicios de seguridad y registro, como y. CloudTrail AWS Config
+ AWS Config los resultados de toda la AWS organización se agrupan en uno solo Cuenta de AWS por motivos de seguridad.
+ El [paquete de conformidad AWS Config ACSC Essential 8](https://docs.aws.amazon.com/config/latest/developerguide/operational-best-practices-for-acsc_essential_8.html) está disponible Cuentas de AWS en toda la organización.

# Ejemplo de carga de trabajo: lago de datos sin servidor
<a name="serverless-data-lake"></a>

Esta carga de trabajo es un ejemplo de [Tema 1: uso de servicios administrados](theme-1.md).

El lago de datos utiliza Amazon S3 para el almacenamiento y AWS Lambda para el ETL. Estos recursos se definen en una AWS Cloud Development Kit (AWS CDK) aplicación. Los cambios en el sistema se implementan mediante AWS CodePipeline. Esta canalización está restringida al equipo de aplicaciones. Cuando el equipo de aplicaciones hace una solicitud de extracción al repositorio de código, se utiliza la [regla de dos personas](https://docs.aws.amazon.com/wellarchitected/latest/analytics-lens/best-practice-5.2---implement-least-privilege-policies-for-source-and-downstream-systems..html).

En el caso de esta carga de trabajo, el equipo de aplicaciones toma las medidas siguientes para abordar las estrategias Essential Eight.

*Control de aplicaciones*
+ El equipo de aplicaciones habilita [Lambda Protection](https://docs.aws.amazon.com/guardduty/latest/ug/lambda-protection.html) y el escaneo GuardDuty [Lambda en Amazon](https://docs.aws.amazon.com/inspector/latest/user/scanning-lambda.html) Inspector.
+ El equipo de aplicaciones implementa mecanismos para inspeccionar y [administrar los resultados de Amazon Inspector](https://docs.aws.amazon.com/inspector/latest/user/findings-managing-automating-responses.html#findings-managing-eventbridge-tutorial).

*Revisiones para las aplicaciones*
+ El equipo de aplicaciones habilita el escaneo de Lambda en Amazon Inspector y configura las alertas para las bibliotecas en desuso o vulnerables.
+ El equipo de aplicaciones permite realizar un seguimiento AWS Config de AWS los recursos para el descubrimiento de activos.

*Restricción de los privilegios administrativos*
+ Como se describe en la sección [Arquitectura principal](scenario.md#core-architecture), el equipo de aplicaciones ya restringe el acceso a las implementaciones de producción mediante una regla de aprobación en su canalización de implementaciones.
+ El equipo de aplicaciones confía en las soluciones de federación de identidades y registro centralizados que se describen en la sección [Arquitectura principal](scenario.md#core-architecture).
+ El equipo de la aplicación crea una AWS CloudTrail ruta y Amazon CloudWatch filtra.
+ El equipo de aplicaciones configura las alertas del Amazon Simple Notification Service (Amazon SNS) CodePipeline para las implementaciones AWS CloudFormation y las eliminaciones de pilas.

*Aplicación de revisiones a sistemas operativos*
+ El equipo de aplicaciones habilita el escaneo de Lambda en Amazon Inspector y configura las alertas para las bibliotecas en desuso o vulnerables.

*Autenticación multifactor*
+ El equipo de aplicaciones confía en la solución de federación de identidades centralizada que se describe en la sección [Arquitectura principal](scenario.md#core-architecture). Esta solución aplica la MFA, registra las autenticaciones y las alertas o responde de manera automática a los eventos de MFA sospechosos.

*Copias de seguridad periódicas*
+ El equipo de aplicaciones almacena el código, como AWS CDK las aplicaciones y las funciones y configuraciones de Lambda, en un repositorio de [código](https://aws.amazon.com/blogs/devops/how-to-migrate-your-aws-codecommit-repository-to-another-git-provider/).
+ El equipo de aplicaciones habilita el control de versiones y el bloqueo de objetos de Amazon S3 para evitar que se eliminen o modifiquen los objetos.
+ El equipo de aplicaciones confía en la durabilidad integrada de Amazon S3 en lugar de replicar todo su conjunto de datos en otra Región de AWS.
+ El equipo de aplicaciones ejecuta una copia de la carga de trabajo en otro equipo Región de AWS que cumple con sus requisitos de soberanía de datos. Utilizan las tablas globales de Amazon DynamoDB y la [replicación entre regiones](https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication.html#crr-scenario) de Amazon S3 para replicar los datos de manera automática de la región principal a la región secundaria.

# Ejemplo de carga de trabajo: servicio web en contenedores
<a name="containerised-web-service"></a>

Esta carga de trabajo es un ejemplo de [Tema 2: gestión de la infraestructura inmutable mediante canalizaciones seguras](theme-2.md).

El servicio web se ejecuta en Amazon ECS y utiliza una base de datos en Amazon RDS. El equipo de aplicaciones define estos recursos en una CloudFormation plantilla. Los contenedores se crean con el Generador de imágenes de EC2 y se almacenan en Amazon ECR. El equipo de aplicaciones implementa los cambios en el sistema mediante AWS CodePipeline. Esta canalización está restringida al equipo de aplicaciones. Cuando el equipo de aplicaciones hace una solicitud de extracción al repositorio de código, se utiliza la [regla de dos personas](https://docs.aws.amazon.com/wellarchitected/latest/analytics-lens/best-practice-5.2---implement-least-privilege-policies-for-source-and-downstream-systems..html).

En el caso de esta carga de trabajo, el equipo de aplicaciones toma las medidas siguientes para abordar las estrategias Essential Eight.

*Control de aplicaciones*
+ El equipo de aplicaciones permite [buscar imágenes de contenedores de Amazon ECR en Amazon Inspector](https://docs.aws.amazon.com/inspector/latest/user/scanning-ecr.html).
+ El equipo de aplicaciones incorporó la herramienta de seguridad [File Access Policy Daemon (fapolicyd)](https://github.com/linux-application-whitelisting/fapolicyd/blob/main/README.md) a la canalización del Generador de imágenes de EC2. Para más información, consulte [Implementing Application Control](https://www.cyber.gov.au/resources-business-and-government/maintaining-devices-and-systems/system-hardening-and-administration/system-hardening/implementing-application-control) en el sitio web de ACSC.
+ El equipo de aplicaciones configura la definición de tareas de Amazon ECS para registrar los resultados en Amazon CloudWatch Logs.
+ El equipo de aplicaciones implementa mecanismos para inspeccionar y administrar los resultados de Amazon Inspector.

*Revisiones para las aplicaciones*
+ El equipo de aplicaciones permite buscar imágenes de contenedores de Amazon ECR en Amazon Inspector y configura las alertas para las bibliotecas en desuso o vulnerables.
+ El equipo de aplicaciones automatiza sus respuestas a los resultados de Amazon Inspector. Los nuevos hallazgos inician su proceso de implementación a través de un EventBridge activador de Amazon, y CodePipeline es el objetivo.
+ El equipo de aplicaciones permite AWS Config realizar un seguimiento de AWS los recursos para el descubrimiento de activos.

*Restricción de los privilegios administrativos*
+ El equipo de aplicaciones ya restringe el acceso a las implementaciones de producción mediante una regla de aprobación en su canalización de implementaciones.
+ El equipo de aplicaciones confía en la federación de identidades del equipo de la nube centralizada para la rotación de credenciales y el registro centralizado.
+ El equipo de aplicaciones crea un CloudTrail registro y CloudWatch los filtra.
+ El equipo de aplicaciones configura las alertas de Amazon SNS para las CodePipeline implementaciones y CloudFormation las eliminaciones de pilas.

*Aplicación de revisiones a sistemas operativos*
+ El equipo de aplicaciones permite buscar imágenes de contenedores de Amazon ECR en Amazon Inspector y configura las alertas para las actualizaciones de revisiones del sistema operativo.
+ El equipo de aplicaciones automatiza su respuesta a los resultados de Amazon Inspector. Los nuevos hallazgos inician su proceso de implementación mediante un EventBridge disparador, y ese CodePipeline es el objetivo.
+ El equipo de aplicaciones se suscribe a las notificaciones de eventos de Amazon RDS para recibir la información acerca de las actualizaciones. Toman una decisión basada en el riesgo con el responsable de la empresa sobre si aplicar estas actualizaciones de manera manual o dejar que Amazon RDS las aplique de manera automática.
+ El equipo de aplicaciones configura la instancia de Amazon RDS para que sea un clúster de varias zonas de disponibilidad con el fin de reducir el impacto de los eventos de mantenimiento.

*Autenticación multifactor*
+ El equipo de aplicaciones confía en la solución de federación de identidades centralizada que se describe en la sección [Arquitectura principal](scenario.md#core-architecture). Esta solución aplica la MFA, registra las autenticaciones y las alertas o responde de manera automática a los eventos de MFA sospechosos.

*Copias de seguridad periódicas*
+ El equipo de aplicaciones configura su clúster de Amazon RDS AWS Backup para automatizar la copia de seguridad de los datos.
+ El equipo de aplicaciones almacena las CloudFormation plantillas en un repositorio de código.
+ El equipo de aplicaciones desarrolla un proceso automatizado para [crear una copia de su carga de trabajo en otra región y ejecutar pruebas automatizadas](https://aws.amazon.com/blogs/architecture/disaster-recovery-dr-architecture-on-aws-part-iii-pilot-light-and-warm-standby/) (entrada del AWS blog). Una vez ejecutadas las pruebas automatizadas, la canalización destruye la pila. Esta canalización se ejecuta de manera automática una vez al mes y valida la eficacia de los procedimientos de recuperación.

# Ejemplo de carga de trabajo: software COTS en Amazon EC2
<a name="cots-software"></a>

Esta carga de trabajo es un ejemplo de [Tema 3: administración de la infraestructura mutable con automatización](theme-3.md).

La carga de trabajo que se ejecuta en Amazon EC2 se creó de manera manual mediante Consola de administración de AWS. Los desarrolladores actualizan el sistema de manera manual. Para ello, inician sesión en las instancias de EC2 y actualizan el software.

En el caso de esta carga de trabajo, los equipos de la nube y aplicaciones toman las medidas siguientes para abordar las estrategias Essential Eight.

*Control de aplicaciones*
+ El equipo de la nube configura su canalización de AMI centralizada para instalar y configurar el AWS Systems Manager agente (agente SSM), CloudWatch el agente y. SELinux Comparten la AMI resultante en todas las cuentas de la organización.
+ El equipo de nube usa AWS Config reglas para confirmar que todas las [instancias de EC2 en ejecución son administradas por Systems Manager](https://docs.aws.amazon.com/config/latest/developerguide/ec2-instance-managed-by-systems-manager.html) y tienen [SSM Agent, CloudWatch agente e SELinux instalado](https://docs.aws.amazon.com/config/latest/developerguide/ec2-managedinstance-applications-required.html).
+ El equipo de la nube envía CloudWatch los resultados de Amazon Logs a una solución centralizada de gestión de eventos e información de seguridad (SIEM) que se ejecuta en Amazon OpenSearch Service.
+ El equipo de aplicaciones implementa mecanismos para inspeccionar y gestionar los hallazgos de AWS Config Amazon Inspector. GuardDuty El equipo de la nube implementa sus propios mecanismos para detectar los resultados que no detecte el equipo de aplicaciones. Para más información sobre cómo crear un programa de administración de vulnerabilidades para abordar los resultados, consulte [Building a scalable vulnerability management program on AWS](https://docs.aws.amazon.com/prescriptive-guidance/latest/vulnerability-management/introduction.html).

*Revisiones para las aplicaciones*
+ El equipo de aplicaciones aplica revisiones a las instancias según los resultados de Amazon Inspector.
+ El equipo de la nube corrige la AMI base y el equipo de aplicaciones recibe una alerta cuando cambia esa AMI.
+ El equipo de aplicaciones restringe el acceso directo a sus instancias de EC2 mediante la configuración de las [reglas de los grupos de seguridad](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-rules.html) para permitir el tráfico solo en los puertos necesarios para la carga de trabajo.
+ El equipo de aplicaciones utiliza [Administrador de parches](https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager.html) para aplicar las revisiones a las instancias en lugar de iniciar sesión en instancias individuales.
+ Para ejecutar los comandos arbitrarios en grupos de instancias de EC2, el equipo de aplicaciones utiliza [Run Command](https://docs.aws.amazon.com/systems-manager/latest/userguide/run-command.html).
+ En las pocas ocasiones en que el equipo de aplicaciones necesita acceso directo a una instancia, utiliza el [Administrador de sesiones](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager.html). Este enfoque de acceso utiliza las identidades federadas y registra la actividad de la sesión con fines de auditoría.

*Restricción de los privilegios administrativos*
+ El equipo de aplicaciones configura las [reglas de los grupos de seguridad](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-rules.html) para permitir el tráfico solo en los puertos necesarios para la carga de trabajo. Esto restringe el acceso directo a las instancias de Amazon EC2 y es necesario que los usuarios accedan a las instancias de EC2 a través del Administrador de sesiones.
+ El equipo de aplicaciones confía en la federación de identidades del equipo de la nube centralizada para la rotación de credenciales y el registro centralizado.
+ El equipo de la aplicación crea un CloudTrail registro y CloudWatch los filtra.
+ El equipo de aplicaciones configura las alertas de Amazon SNS para las CodePipeline implementaciones y CloudFormation las eliminaciones de pilas.

*Aplicación de revisiones a sistemas operativos*
+ El equipo de la nube corrige la AMI base y el equipo de aplicaciones recibe una alerta cuando cambia esa AMI. El equipo de aplicaciones implementa instancias nuevas mediante esta AMI y, a continuación, utiliza [State Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-state.html), una funcionalidad de Systems Manager, para instalar el software necesario.
+ El equipo de aplicaciones utiliza Administrador de parches para aplicar las revisiones a las instancias en lugar de iniciar sesión en instancias individuales.
+ Para ejecutar los comandos arbitrarios en grupos de instancias de EC2, el equipo de aplicaciones utiliza Run Command.
+ En las pocas ocasiones en que el equipo de aplicaciones necesita acceso directo, utiliza el Administrador de sesiones.

*Autenticación multifactor*
+ El equipo de aplicaciones confía en la solución de federación de identidades centralizada que se describe en la sección [Arquitectura principal](scenario.md#core-architecture). Esta solución aplica la MFA, registra las autenticaciones y las alertas o responde de manera automática a los eventos de MFA sospechosos.

*Copias de seguridad periódicas*
+ El equipo de aplicaciones crea un AWS Backup plan para sus instancias EC2 y los volúmenes de Amazon Elastic Block Store (Amazon EBS).
+ El equipo de aplicaciones implementa un mecanismo para hacer una restauración de copias de seguridad de manera manual todos los meses.