Visualice los informes de credenciales de IAM para todas las cuentas de AWS que utilizan Amazon QuickSight - 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.

Visualice los informes de credenciales de IAM para todas las cuentas de AWS que utilizan Amazon QuickSight

Creado por Parag Nagwekar (AWS) y Arun Chandapillai (AWS)

Repositorio de códigos: obtenga una visibilidad de sus informes de credenciales de IAM en toda la organización

Entorno: producción

Tecnologías: análisis; asesoramiento; gestión y gobernanza; seguridad, identidad, conformidad

Carga de trabajo: todas las demás cargas de trabajo

Servicios de AWS: Amazon Athena; AWS EventBridge; CloudFormation Amazon; AWS Identity and Access Management; Amazon QuickSight

Resumen

Advertencia: los usuarios de IAM tienen credenciales de larga duración, lo que supone un riesgo para la seguridad. Para ayudar a mitigar este riesgo, le recomendamos que brinde a estos usuarios únicamente los permisos que necesitan para realizar la tarea y que los elimine cuando ya no los necesiten.

Puede utilizar los informes de credenciales de AWS Identity and Access Management (IAM) para ayudarle a cumplir los requisitos de seguridad, auditoría y conformidad de su organización. Los informes de credenciales proporcionan una lista de todos los usuarios de sus cuentas de AWS y muestran el estado de sus credenciales, como las contraseñas, claves de acceso y dispositivos de autenticación multifactor (MFA). Puede usar informes de credenciales para varias cuentas de AWS administradas por AWS Organizations.

Este patrón incluye pasos y código para ayudarle a crear y compartir informes de credenciales de IAM para todas las cuentas de AWS de su organización mediante los paneles de Amazon QuickSight . Puede compartir los paneles con las partes interesadas de su organización. Los informes pueden ayudar a su organización a lograr los siguientes resultados empresariales previstos:

  • Identifique los incidentes de seguridad relacionados con los usuarios de IAM

  • Realice un seguimiento de la migración en tiempo real de los usuarios de IAM a la autenticación de inicio de sesión único (SSO)

  • Realice un seguimiento de las regiones de AWS a las que acceden los usuarios de IAM

  • Manténgase en conformidad

  • Comparta información con otras partes interesadas

Requisitos previos y limitaciones

Requisitos previos 

Arquitectura

Pila de tecnología

  • Amazon Athena

  • Amazon EventBridge

  • Amazon QuickSight

  • Amazon Simple Storage Service (Amazon S3)

  • AWS Glue

  • AWS Identity y Access Management (IAM)

  • AWS Lambda

  • AWS Organizations

Arquitectura de destino

El siguiente diagrama muestra una arquitectura para configurar un flujo de trabajo que captura los datos de los informes de credenciales de IAM de varias cuentas de AWS.

La siguiente captura de pantalla ilustra el diagrama de arquitectura
  1. EventBridge invoca una función Lambda a diario.

  2. La función de Lambda asume un rol de IAM en todas las cuentas de AWS de la organización. A continuación, la función crea el informe de credenciales de IAM y almacena los datos del informe en un bucket de S3 centralizado. Debe habilitar el cifrado y desactivar el acceso público en el bucket de S3.

  3. Un rastreador de AWS Glue rastrea el depósito de S3 a diario y actualiza la tabla de Athena en consecuencia.

  4. QuickSight importa y analiza los datos del informe de credenciales y crea un panel que las partes interesadas pueden visualizar y compartir con ellas.

Herramientas

Servicios de AWS

  • Amazon Athena es un servicio de consultas interactivo que facilita el análisis de datos en Amazon S3 con SQL estándar.

  • Amazon EventBridge es un servicio de bus de eventos sin servidor que le ayuda a conectar sus aplicaciones con datos en tiempo real de diversas fuentes. Por ejemplo, funciones de Lambda, puntos de conexión de invocación HTTP que utilizan destinos API o buses de eventos en otras cuentas de AWS.

  • Amazon QuickSight es un servicio de inteligencia empresarial (BI) a escala de nube que le ayuda a visualizar, analizar y elaborar informes sobre sus datos en un único panel de control.

  • AWS Identity and Access Management (IAM) le permite administrar de forma segura el acceso a los recursos de AWS mediante el control de quién está autenticado y autorizado a utilizarlos.

  • AWS Lambda es un servicio de computación que ayuda a ejecutar código sin necesidad de aprovisionar ni administrar servidores. Ejecuta el código solo cuando es necesario y amplía la capacidad de manera automática, por lo que solo pagará por el tiempo de procesamiento que utilice.

Código

El código de este patrón está disponible en el GitHub getiamcredsreport-allaccounts-orgrepositorio. Puede usar el código de este repositorio para crear informes de credenciales de IAM en todas las cuentas de AWS en Organizations y almacenarlos en una ubicación central.

Epics

TareaDescripciónHabilidades requeridas

Configura la edición Amazon QuickSight Enterprise.

  1. Active la edición Amazon QuickSight Enterprise en su cuenta de AWS. Para obtener más información, consulta Administrar el acceso de los usuarios dentro de Amazon QuickSight en la QuickSight documentación.

  2. Para conceder permisos al panel de control, obtenga el nombre de recurso de Amazon (ARN) de los QuickSight usuarios.

Administrador de AWS DevOps, administrador de la nube, arquitecto de la nube

Integre Amazon QuickSight con Amazon S3 y Athena.

Debe autorizar el uso QuickSight de Amazon S3 y Athena antes de implementar la pila de AWS CloudFormation .

Administrador de AWS DevOps, administrador de la nube, arquitecto de la nube
TareaDescripciónHabilidades requeridas

Clona el GitHub repositorio.

  1. Clone el GitHub getiamcredsreport-allaccounts-orgrepositorio en su máquina local ejecutando el siguiente comando: git clone https://github.com/aws-samples/getiamcredsreport-allaccounts-org

Administrador de AWS

Implemente la infraestructura.

  1. Inicie sesión en la consola de administración de AWS y abra la CloudFormation consola.

  2. En el panel de navegación, seleccione Crear pila y, a continuación, seleccione Con nuevos recursos (estándar).

  3. En la página Identificar recursos, seleccione Siguiente.

  4. En la página Especificar plantilla, en Origen de la plantilla, seleccione Cargar un archivo de plantilla.

  5. Elija Elegir archivo, seleccione el Cloudformation-createcredrepo.yaml archivo del GitHub repositorio clonado y, a continuación, elija Siguiente.

  6. En Parámetros, actualice IAMRoleName con su rol de IAM. Esta debe ser el rol de IAM que desea que Lambda asuma en todas las cuentas de la organización. Esta función crea el informe de credenciales. Nota: No es necesario que el rol esté presente en todas las cuentas en este paso de la creación de la pila.

  7. En Parámetros, actualice S3BucketName con el nombre del bucket de S3 donde Lambda puede almacenar las credenciales de todas las cuentas.

  8. En Nombre de la pila, introduzca el nombre de la pila.

  9. Seleccione Enviar.

  10. Anote el nombre del rol de la función de Lambda.

Administrador de AWS

Cree una política de permisos de IAM.

Cree una política de IAM para cada cuenta de AWS de su organización con los siguientes permisos:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:GenerateCredentialReport", "iam:GetCredentialReport" ], "Resource": "*" } ] }
AWS DevOps, administrador de nube, arquitecto de nube, ingeniero de datos

Cree un rol de IAM con una política de confianza.

  1. Cree un rol de IAM para las cuentas de AWS y adjunte la política de permisos que creó en el paso anterior.

  2. Adjunte la siguiente política de confianza al rol de IAM:

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "AWS":[ "arn:aws:iam::<MasterAccountID>:role/<LambdaRole>" ] }, "Action":"sts:AssumeRole" } ] }

Importante: Sustituya arn:aws:iam::<MasterAccountID>:role/<LambdaRole> por el ARN de la función de Lambda que indicó anteriormente.

Nota: Las organizaciones suelen utilizar la automatización para crear funciones de IAM para sus cuentas de AWS. Le recomendamos que utilice esta automatización, si está disponible. Como alternativa, puede utilizar el CreateRoleforOrg.py script del repositorio de código . El script requiere una función administrativa existente o cualquier otro rol de IAM que tenga permiso para crear una política y un rol de IAM en cada cuenta de AWS.

Administrador de la nube, arquitecto de la nube, administrador de AWS

Configura Amazon QuickSight para que visualice los datos.

  1. Inicie sesión QuickSight con sus credenciales.

  2. Cree un conjunto de datos con Athena (con la base de datos iamcredreportdb y la tabla “cfn_iamcredreport”) y, a continuación, actualice automáticamente el conjunto de datos.

  3. Crea un análisis en QuickSight.

  4. Crea un QuickSight panel de control.

AWS DevOps, administrador de nube, arquitecto de nube, ingeniero de datos

Información adicional

Consideraciones adicionales

Considere lo siguiente:

  • Después de implementar la infraestructura, puede esperar a que Athena cree los informes en Amazon S3 y los analice hasta que Lambda y AWS Glue se ejecuten según lo programado. CloudFormation Como alternativa, puede ejecutar Lambda manualmente para obtener los informes en Amazon S3 y, a continuación, ejecutar el rastreador AWS Glue para obtener la tabla Athena que se crea a partir de los datos.

  • QuickSight es una poderosa herramienta para analizar y visualizar datos en función de los requisitos de su empresa. Puede utilizar los parámetros QuickSight para controlar los datos de los widgets en función de los campos de datos que elija. Además, puedes usar un QuickSight análisis para crear parámetros (por ejemplo, campos de cuenta, fecha y usuario como partition_0partition_1, y user respectivamente) a partir de tu conjunto de datos para añadir controles a los parámetros de cuenta, fecha y usuario.

  • Para crear sus propios QuickSight paneles, consulte QuickSight Workshops en el sitio web de AWS Workshop Studio.

  • Para ver ejemplos de QuickSight cuadros de mando, consulte el repositorio de GitHub getiamcredsreport-allaccounts-orgcódigo.

Resultados empresariales específicos

Puede utilizar esta guía para lograr los siguientes resultados empresariales:

  • Identifique los incidentes de seguridad relacionados con los usuarios de IAM: investigue a todos los usuarios de todas las cuentas de AWS de su organización mediante un único panel de control. Puede realizar un seguimiento de la tendencia de las regiones de AWS individuales a las que accedió más recientemente un usuario de IAM y de los servicios que utilizó.

  • Realice un seguimiento de la migración en tiempo real de los usuarios de IAM a la autenticación de SSO: mediante el SSO, los usuarios pueden iniciar sesión una vez con una sola credencial y acceder a varias cuentas y aplicaciones de AWS. Si planea migrar sus usuarios de IAM al SSO, este patrón puede ayudarlo a realizar la transición al SSO y a realizar un seguimiento del uso de todas las credenciales de los usuarios de IAM (como el acceso a la consola de administración de AWS o el uso de claves de acceso) en todas las cuentas de AWS.

  • Realice un seguimiento de las regiones de AWS a las que acceden los usuarios de IAM: puede controlar el acceso de los usuarios de IAM a las regiones con diversos fines, como la soberanía de los datos y el control de costos. También puede realizar un seguimiento del uso de las regiones por parte de cualquier usuario de IAM.

  • Cumpla con las normas: si sigue el principio de privilegios mínimos, solo puede conceder los permisos de IAM específicos necesarios para realizar una tarea específica. Además, puede realizar un seguimiento del acceso a los servicios de AWS, a la consola de administración de AWS y al uso prolongado de las credenciales.

  • Comparta información con otras partes interesadas: puede compartir paneles seleccionados con otras partes interesadas, sin darles acceso a los informes de credenciales de IAM ni a las cuentas de AWS.