Blog de Amazon Web Services (AWS)
Consideraciones de seguridad para decidir un entorno de cuentas AWS
Por Luis Quintero, arquitecto de seguridad AWS México
Algunos de nuestros clientes inician su jornada hacia la nube desplegando una aplicación en una única cuenta AWS. En esta cuenta AWS inicial implementan una estrategia de seguridad con servicios y controles entre los que se puede mencionar, segregación del tráfico de red utilizando Amazon Virtual Private Cloud y subredes distintas para ambientes de desarrollo, pruebas y producción, filtrado de tráfico de entrada y salida mediante security groups, detección inteligente de amenazas con Amazon GuardDuty, control de acceso y cumplimiento al principio de privilegio mínimo con AWS Identity and Access Management (IAM), evaluación de controles para cumplimiento a normas de seguridad con AWS Security Hub.
Seguridad en un entorno de cuenta única
Los servicios y controles mencionados ayudan en el mantenimiento de la postura de seguridad buscada por el cliente en la carga de trabajo, sin embargo a medida que nuestros clientes crecen y se incrementa el número de aplicaciones a desplegar en AWS, la administración adquiere mayor grado de complejidad, algunos retos de seguridad adquieren mayor relevancia:
- En caso de un eventual incidente de seguridad, el radio de impacto puede abarcar la totalidad de las cargas de trabajo desplegadas en la única cuenta.
- Las nuevas aplicaciones podrían requerir acceso para diferentes administradores o usuarios o requerir de roles o controles diferentes a los establecidos inicialmente, por lo que mantener el principio de privilegio mínimo requiere de mayor supervisión y administración.
- Los requerimientos de conformidad pueden ser más estrictos para algunas aplicaciones que otras ya sea por la naturaleza de la aplicación, la sensibilidad de los datos o información que manejan o por estar sujetas a alguna regulación de la industria. En estos caso, el aplicar un criterio uniforme en la aplicación de controles de seguridad tiene como resultado un incremento en el número de falsos positivos dificultando así la remediación y el poder demostrar conformidad o adherencia a los marcos de ciberseguridad o regulatorios.
Seguridad en un entorno de múltiples cuentas
Para solventar los retos de seguridad mencionados en un ambiente de cuenta única, nuestros clientes pueden potar por desplegar cargas de trabajo en un entorno de múltiples cuentas AWS.
La siguiente imagen muestra ejemplos para ambientes de múltiples cuentas, en el primero, asignando una aplicación por cuenta AWS (app1, app2, etc.), mientras que en el segundo ejemplo observamos una segregación mayor con cuentas aisladas por aplicación y ambiente (app1-dev, app1-test, app1-prod, app2-dev, app2-test, app2-prod, etc.)
Construir una arquitectura basada en múltiples cuentas reduce el radio de impacto en caso de incidente y consecuentemente limita el impacto en costos asociados al mismo, ya que el mecanismo más sólido para separar aplicaciones es desplegar en cuentas separadas.
De igual manera, un entorno de múltiples cuentas permite establecer controles de seguridad y de conformidad específicos para cada cuenta, lo que permite configurar los controles específicos para cada caso para limitar la cantidad de falsos positivos y facilitar la remediación y respuesta a incidentes.
Ahora bien, un despliegue en múltiples cuentas sin ningún tipo de gobierno central viene con los siguientes retos de seguridad:
- Cada cuenta requiere su propia administración de usuarios y permisos y verificación de principios de privilegio mínimo
- Al no existir un gobierno central del entorno, no hay uniformidad en la forma en que se despliegan los servicios ni tampoco una base de controles mínimos aplicables para la totalidad del entorno.
Si bien es posible establecer una base de controles mínimos desde una cuenta central a través de scripts y roles cross-account, es fácil observar en la imagen siguiente que la complejidad de hacerlo se incrementa significativamente a medida que aumenta el número de cargas de trabajo.
AWS Organizations
Para administrar un entorno de múltiples cuentas en forma simple, AWS ofrece el servicios de AWS Organizations.
En la imagen siguiente es posible observar como AWS Organizations permite centralizar la administración del entorno de cuentas múltiples en una cuenta principal, con AWS Organizations es posible organizar cuentas en Unidades Organizacionales y establecer políticas de control de servicio (SCP) que aplican para todas las cuentas de la organización, lo que permite establecer una línea base de controles elementales sobre todas las cuentas.
AWS Organizations también ofrece:
- Cuenta única de pago con facturación centralizada
- Administración de accesos con AWS Single Sign-On
- Uso de políticas de control de servicio
- Monitoreo centralizado con AWS Config, AWS CloudTrail y Amazon CloudWatch
- Manejo de Presupuestos
Con estas funcionalidades, utilizando AWS Organizations nuestros clientes pueden tener administración centralizada y gobernar su estructura de cuentas múltiples, atendiendo así los retos de seguridad descritos.
AWS Control Tower
Otra opción para lograr un control y gobierno de una arquitectura de múltiples cuentas es AWS Control Tower.
AWS Control Tower hace uso de AWS Organizations, la solución de AWS Landing Zone y el uso de GuardRails para desplegar en forma automática un entorno de cuentas múltiples cuentas basado en recomendaciones de prácticas de seguridad y los criterios de buenas prácticas de arquitectura
Con el uso de GuardRails, nuestros clientes pueden utilizar reglas pre-construidas para gobernar la operación, seguridad y conformidad del entorno, ya sea aplicándolas a toda la organización o a las cuentas seleccionadas.
Con las características mencionadas de AWS Control Tower es posible desplegar en forma automática y con base a las mejores prácticas de seguridad, un ambiente de múltiples cuentas, así mismo contar con un mecanismo de controles y servicios que permitan establecer un gobierno central del ambiente.
Con esta solución, nuestros clientes pueden atender los retos de seguridad y administración que conlleva el desplegar distintas cargas de trabajo que requieren separación sólida entre ellas y que deben ser desplegadas de forma segura con administración y controles centralizados.
Conclusión
Para iniciar su jornada en la nube nuestros clientes deben definir si el despliegue será en un entorno de múltiples cuentas o iniciar con una única cuenta.
Esta definición debe tomar en cuenta los distintos retos de seguridad y complejidad que se presentan en cada caso, por ejemplo, en un despliegue en una sola cuenta no hay necesidad de crear roles cross-account o administrar una organización de cuentas, pero es importante tomar en cuenta que el radio de impacto en caso de una eventualidad es alto, además de que las complejidad en el gobierno de seguridad de la cuenta, administración y operación se incrementan con el número de aplicaciones a desplegar.
Por otro lado, si bien desplegar en un ambiente de múltiples cuentas reduce los riesgos mencionados, esto viene acompañado de nuevos retos en seguridad como asegurar una línea base de controles mínimos para todas las cuentas además de una curva mayor de aprendizaje para ganar familiaridad con herramientas como AWS Organizations, AWS Landing Zone y otras.
AWS Control Tower es un servicio que automatiza la creación de un entorno de múltiples cuentas y está basado en las mejores prácticas de seguridad en AWS, por lo que en muchos casos la mejor alternativa para iniciar la jornada hacia la nube AWS es considerar AWS Control Tower como una solución estratégica.
Sobre el autor
Luis Quintero es arquitecto de seguridad en Amazon Web Services (AWS) Servicios Profesionales en Ciudad de México. Cuenta con más de 20 años de experiencia en IT y previo a AWS formó parte del equipo global de ciberseguridad en una institución financiera. Su misión es ayudar a nuestros clientes a desplegar en forma segura sus cargas de trabajo en AWS.
Sobre los revisores
Omner Barajas es Arquitecto de Soluciones Especialista en Seguridad en AWS México.
Daniel García es Arquitecto de Soluciones Especialista en Seguridad en AWS Brasil.