Blog de Amazon Web Services (AWS)

Automatizar la administración de permisos de varias cuentas en AWS con CloudKnox y AWS Control Tower

Por Kanishk Mahajan, líder de arquitectura de soluciones de ISV de AWS y
Maya Neelakandhan, directora de satisfacción del cliente en CloudKnox

 

Introducción

La administración de permisos en AWS permite a los equipos de seguridad e infraestructura de la nube proteger sus recursos en la nube del mal uso de los permisos de identidad. La seguridad en la nube requiere la aplicación continua de políticas de privilegios mínimos en todas las cuentas de AWS en la organización de AWS.

Contar con una estrategia multicuenta es una práctica recomendada para lograr un mayor aislamiento de los recursos. También ayuda a satisfacer las necesidades normativas y de conformidad, a controlar los costos operativos y a agregar una capa adicional de seguridad. AWS Control Tower utiliza las prácticas recomendadas de AWS para establecer una línea de base de varias cuentas bien diseñada. Además, permite la gobernanza en todas las cuentas de AWS. Muchos clientes utilizan AWS Control Tower para administrar y controlar los entornos AWS multicuenta. Para obtener más información sobre la administración de entornos AWS multicuenta con AWS Control Tower, consulte Introducción a AWS Control Tower.

CloudKnox es un socio avanzado de APN. La solución SaaS CloudKnox, disponible en AWS Marketplace, proporciona monitoreo y perfil continuo de los permisos otorgados a los usuarios y roles de AWS Identity and Access Management (IAM). CloudKnox permite a los equipos de operaciones de seguridad e infraestructura en la nube crear, monitorear y aplicar continuamente políticas de privilegio mínimo en todas las cuentas de AWS desde un único panel de control. Esto garantiza que todas las identidades que pueden acceder a la infraestructura de la nube solo tienen los permisos necesarios para realizar sus tareas específicas requeridas. Entre ellas se encuentran los empleados, los contratistas de terceros, las cuentas de servicio, las aplicaciones y los recursos en la nube, como las instancias de Amazon Elastic Compute Cloud (Amazon EC2).

En esta publicación del blog, Maya y yo compartimos una nueva solución que integra CloudKnox con AWS Control Tower. De este modo, todas las cuentas de AWS agregadas recientemente en un entorno de AWS Control Tower se inscriben automáticamente en CloudKnox mediante Account Factory. La integración facilita que la administración de permisos basada en CloudKnox se habilite automáticamente para todas las cuentas de AWS agregadas recientemente. Así, se detectan y aplican los privilegios mínimos y se establecen los derechos de los permisos de IAM.

 

Requisitos previos

Debe completar los siguientes requisitos previos antes de implementar la solución de integración de CloudKnox y AWS Control Tower:

  1. Registrarse en una cuenta de CloudKnox desde la consola de CloudKnox.
  2. Crear una suscripción a CloudKnox en AWS Marketplace y obtener las credenciales para acceder a CloudKnox:
    • Diríjase a AWS Marketplace listing for CloudKnox y elija Continue to Subscribe (Continuar para suscribirse). Seleccione la duración del contrato (12 meses o 36 meses), la configuración de renovación automática y elija Create Contract(Crear contrato). Para completar la suscripción, revise las opciones seleccionadas y elija Pay now(Pagar ahora).
    • Será redirigido a la consola de CloudKnox. Inicie sesión con la cuenta que registró en el paso 1. En la página principal, elija Deploy (Implementar) y siga las instrucciones para instalar la plantilla de AWS CloudFormation proporcionada por CloudKnox que aprovisiona el dispositivo CloudKnox Sentry en su cuenta de AWS.
    • Inicie sesión en la consola de CloudKnox API Integrations y elija Generate New Key (Generar nueva clave). Anote la clave de acceso, la clave secreta y el ID de la cuenta de servicio generados, así como el ID de la cuenta de AWS en la que se implementó el dispositivo Sentry. Los utilizará en la siguiente integración.

 

Información general acerca de la solución

La integración de AWS Control Tower con CloudKnox se basa en la automatización de los eventos del ciclo de vida de AWS Control Tower a través de los eventos de AWS CloudWatch y de AWS CloudFormation StackSets. Consiste en una plantilla de AWS CloudFormation que automatiza completamente el aprovisionamiento, configuración e integración de todos los componentes necesarios para esta solución.

La plantilla de AWS CloudFormation y una guía de lectura detallada para esta solución están disponibles aquí.. Esta plantilla se implementa en la cuenta de administración de AWS Control Tower y crea los siguientes componentes:

  1. Un CloudKnox AWS CloudFormation StackSet en la cuenta de administración de AWS Control Tower.. Este incorpora los componentes de CloudKnox para configurar un rol de integración de CloudKnox. Todos los parámetros necesarios para los componentes de CloudKnox, como el secreto y la clave de la API, se almacenan en AWS Secrets Manager.
    • Una regla de Amazon CloudWatch Events: se activa en base a un evento del ciclo de vida de AWS Control Tower.
    • Una función del ciclo de vida de AWS Lambda: el objetivo de la regla de CloudWatch Events.
  2. Una instancia de pila AWS CloudFormation de CloudKnox en la cuenta administrada por AWS Control Tower.. Cuando se agrega una nueva cuenta desde la cuenta de administración de AWS Control Tower, la función Lambda crea una instancia de pila en la cuenta administrada. Esta instancia de pila se basa en el CloudKnox StackSet implementado en la cuenta de administración. La instancia de pila:
    • Aprovisiona el rol de IAM de integración de CloudKnox en la cuenta administrada.
    • Llama a la API CloudKnox Add Account que registra la cuenta AWS agregada recientemente en CloudKnox.

El siguiente diagrama de arquitectura ilustra los componentes de AWS Control Tower y la integración de CloudKnox.

  • En la cuenta de administración de AWS Control Tower:
    • Se aprovisiona una nueva cuenta de AWS Control Tower a través de la consola Account Factory que forma parte de AWS Service Catalog.
    • Cuando se aprovisiona una nueva cuenta, un evento del ciclo de vida de AWS Control Tower activa una regla de CloudWatch Events.
    • La regla de AWS CloudWatch Events activa una función Lambda.
    • Un AWS CloudFormation StackSet lanza la instancia de pila de CloudKnox en la cuenta administrada por AWS Control Tower.

 

 

  • En la cuenta administrada por AWS Control Tower:
    • Se aprovisiona una nueva cuenta de AWS Control Tower a través de la consola Account Factory que forma parte de AWS Service Catalog.
    • Cuando se aprovisiona una nueva cuenta, un evento del ciclo de vida de AWS Control Tower activa una regla de CloudWatch Events.
    • La regla de AWS CloudWatch Events activa una función Lambda.
    • Un AWS CloudFormation StackSet lanza la instancia de pila de CloudKnox en la cuenta administrada por AWS Control Tower.

 

 

Tutorial paso a paso

Siga estos pasos para configurar la integración de CloudKnox con AWS Control Tower.

Configurar la integración de CloudKnox con AWS Control Tower

  1. Inicie sesión en la consola de AWS CloudFormation con su cuenta de administración.
  2. Lance la plantilla aws-cloudknox-controltower.yaml desde la consola de AWS CloudFormation. Para lanzar una plantilla de AWS CloudFormation desde la consola, siga los pasos descritos aquí.
    • Para ingresar los parámetros en el paso 2, ingrese la Clave de Acceso, la Clave Secreta y el ID de la cuenta de servicio y el ID de la cuenta de AWS donde se implementó el dispositivo Sentry como parámetros. Estos son los parámetros que anotó en el paso 2c en la sección de requisitos previos de esta publicación del blog.

Pruebe su integración

Para probar la integración, agregue una cuenta administrada y cree un evento del ciclo de vida.

Agregar la cuenta administrada

  1. Inicie sesión con la cuenta de administración de AWS Control Tower y abra la consola de AWS Control Tower.
  2. Para agregar una nueva cuenta administrada en la organización de AWS Control Tower, en el panel de navegación, elija Account Factory.
  3. Ingrese los valores de Account email (Correo electrónico de la cuenta), Display name (Nombre para mostrar), AWS SSO email (Correo electrónico de AWS SSO), AWS SSO user name (Nombre de usuario de AWS SSO) y Organizational unit (Unidad organizativa).
  4. Elija Enroll account (Inscribir cuenta).

La creación de la cuenta y la activación del evento del ciclo de vida de AWS Control Tower pueden tardar hasta 30 minutos.

Pruebe su integración

Para verificar que la integración funciona, haga lo siguiente:

  1. Inicie sesión en la cuenta administrada de AWS Control Tower.
    • Valide que se haya creado un rol de integración de CloudKnox (rol de IAM IAM_R_KNOX_SECURITY_XA) en la cuenta administrada.
  2. Consulte el panel de control de CloudKnox AWS (Información general).
    • Inicie sesión en la cuenta de CloudKnox.
    • Vaya a la pestaña Data Collectors (Recolectores de datos) del panel de control. Para ello, elija el icono del engranaje. Verifique que el recolector de datos de CloudKnox esté en el estado Collecting (Recolección) para la cuenta administrada.
    • La recopilación de datos puede tardar hasta una hora en completarse en esta nueva cuenta de AWS.
    • Vuelva a la consola de CloudKnox y elija la pestaña Dashboard (panel). Para ver los análisis de permisos de la cuenta administrada de AWS recién creada, seleccione el ID de la cuenta de AWS específica. La siguiente captura de pantalla muestra mi cuenta aws-jn-sandbox con un diagrama a la izquierda y un gráfico de barras a la derecha que muestra un bajo índice de fluencia de privilegios de 11. Consulte la siguiente captura de pantalla.

 

 

Conclusión

En esta publicación del blog, se describe nuestra nueva solución de mercado para inscribir automáticamente las cuentas de AWS Control Tower con CloudKnox. La integración de CloudKnox con AWS Control Tower le permite ampliar automáticamente las capacidades de administración de permisos de CloudKnox para aplicar el principio de mínimos privilegios en un entorno de AWS con varias cuentas. Para obtener más información sobre esta solución, consulte Soluciones para AWS Control Tower en AWS Marketplace.

 

Este artículo fue traducido del Blog de AWS en Inglés.

 


Sobre los autores

Kanishk es líder de arquitectura de soluciones de ISV de AWS. En este puesto, dirige la arquitectura de soluciones y transformación de la nube para nuestros socios proveedores de software independientes y clientes mutuos en todas las áreas relacionadas con administración y gobernanza, seguridad y conformidad, y migraciones y modernizaciones en AWS.

 

 

 

Maya es una de las ingenieras fundadoras de CloudKnox, involucrada en la creación de la plataforma patentada de autorización basada en actividades de CloudKnox, que ayuda a las empresas a administrar los derechos. En su puesto actual como jefa de satisfacción del cliente, trabaja con los clientes para identificar y resolver sus desafíos con la administración de permisos de IAM.