Visualizza i report sulle credenziali IAM per tutti gli account AWS utilizzando Amazon Quick Sight - Prontuario AWS

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Visualizza i report sulle credenziali IAM per tutti gli account AWS utilizzando Amazon Quick Sight

Parag Nagwekar e Arun Chandapillai, Amazon Web Services

Riepilogo

Avviso: gli utenti IAM dispongono di credenziali a lungo termine, il che rappresenta un rischio per la sicurezza. Per ridurre questo rischio, si consiglia di fornire a questi utenti solo le autorizzazioni necessarie per eseguire l'attività e di rimuoverli quando non sono più necessari.

Puoi utilizzare i report sulle credenziali di AWS Identity and Access Management (IAM) per aiutarti a soddisfare i requisiti di sicurezza, controllo e conformità della tua organizzazione. I report sulle credenziali forniscono un elenco di tutti gli utenti dei tuoi account AWS e mostrano lo stato delle loro credenziali, come password, chiavi di accesso e dispositivi di autenticazione a più fattori (MFA). Puoi utilizzare i report delle credenziali per più account AWS gestiti da AWS Organizations.

Questo modello include passaggi e codice per aiutarti a creare e condividere report sulle credenziali IAM per tutti gli account AWS della tua organizzazione utilizzando i dashboard di Amazon Quick Sight. Puoi condividere le dashboard con le parti interessate della tua organizzazione. I report possono aiutare l'organizzazione a raggiungere i seguenti risultati aziendali mirati:

  • Identifica gli incidenti di sicurezza relativi agli utenti IAM

  • Tieni traccia della migrazione in tempo reale degli utenti IAM all'autenticazione Single Sign-On (SSO)

  • Tieni traccia delle regioni AWS a cui accedono gli utenti IAM

  • Mantieni la conformità

  • Condividi le informazioni con altre parti interessate

Prerequisiti e limitazioni

Prerequisiti

Architecture

Stack tecnologico

  • Amazon Athena

  • Amazon EventBridge

  • Amazon Quick Sight

  • Amazon Simple Storage Service (Amazon S3)

  • AWS Glue

  • AWS Identity and Access Management (IAM)

  • AWS Lambda

  • AWS Organizations

Architettura Target

Il diagramma seguente mostra un'architettura per la configurazione di un flusso di lavoro che acquisisce i dati dei report sulle credenziali IAM da più account AWS.

La schermata seguente illustra il diagramma dell'architettura
  1. EventBridge richiama una funzione Lambda ogni giorno.

  2. La funzione Lambda assume un ruolo IAM in ogni account AWS dell'organizzazione. Quindi, la funzione crea il report sulle credenziali IAM e archivia i dati del report in un bucket S3 centralizzato. È necessario abilitare la crittografia e disattivare l'accesso pubblico sul bucket S3.

  3. Un crawler AWS Glue esegue quotidianamente la scansione del bucket S3 e aggiorna di conseguenza la tabella Athena.

  4. Quick Sight importa e analizza i dati del report sulle credenziali e crea una dashboard che può essere visualizzata e condivisa con le parti interessate.

Tools (Strumenti)

Servizi AWS

  • Amazon Athena è un servizio di query interattivo che semplifica l'analisi dei dati in Amazon S3 utilizzando SQL standard.

  • Amazon EventBridge è un servizio di bus eventi senza server che ti aiuta a connettere le tue applicazioni con dati in tempo reale provenienti da una varietà di fonti. Ad esempio, funzioni Lambda, endpoint di invocazione HTTP che utilizzano destinazioni API o bus di eventi in altri account AWS.

  • Amazon Quick Sight è un servizio di business intelligence (BI) su scala cloud che ti aiuta a visualizzare, analizzare e generare report sui dati in un'unica dashboard. Quick Sight è un componente fondamentale di Amazon Quick Suite, che fornisce visualizzazione interattiva dei dati, analisi in memoria SPICE, analisi integrate e condivisione di dashboard.

  • AWS Identity and Access Management (IAM) ti aiuta a gestire in modo sicuro l'accesso alle tue risorse AWS controllando chi è autenticato e autorizzato a utilizzarle.

  • AWS Lambda è un servizio di elaborazione che ti aiuta a eseguire codice senza dover fornire o gestire server. Esegue il codice solo quando necessario e si ridimensiona automaticamente, quindi paghi solo per il tempo di calcolo che utilizzi.

Codice

Il codice per questo pattern è disponibile nel repository. GitHub getiamcredsreport-allaccounts-org Puoi utilizzare il codice di questo repository per creare report sulle credenziali IAM su account AWS in Organizations e archiviarli in una posizione centrale.

Epiche

OperazioneDescriptionCompetenze richieste

Configura l'edizione Amazon Quick Suite Enterprise.

  1. Attiva l'edizione Amazon Quick Suite Enterprise nel tuo account AWS. Per ulteriori informazioni, consulta Gestire l'accesso degli utenti all'interno di Amazon Quick Suite nella documentazione di Quick Suite.

  2. Per concedere le autorizzazioni del pannello di controllo, ottieni l'Amazon Resource Name (ARN) degli utenti Quick Sight.

Amministratore AWS DevOps, AWS, amministratore cloud, architetto cloud

Integra Amazon Quick Sight con Amazon S3 e Athena.

È necessario autorizzare Quick Sight a utilizzare Amazon S3 e Athena prima di distribuire lo stack AWS. CloudFormation

Amministratore AWS DevOps, AWS, amministratore cloud, architetto cloud
OperazioneDescriptionCompetenze richieste

Clona il GitHub repository.

  1. Clona il GitHub getiamcredsreport-allaccounts-orgrepository sul tuo computer locale eseguendo il seguente comando: git clone https://github.com/aws-samples/getiamcredsreport-allaccounts-org

Amministratore AWS

Implementa l'infrastruttura.

  1. Accedi alla console di gestione AWS e apri la console CloudFormation .

  2. Nel riquadro di navigazione, scegli Crea stack, quindi scegli Con nuove risorse (standard).

  3. Nella pagina Identifica risorse, scegli Avanti.

  4. Nella pagina Specificare il modello, per Origine del modello, seleziona Carica un file modello.

  5. Scegli file, seleziona il Cloudformation-createcredrepo.yaml file dal tuo GitHub repository clonato, quindi scegli Avanti.

  6. In Parametri, esegui l'aggiornamento IAMRoleName con il tuo ruolo IAM. Questo dovrebbe essere il ruolo IAM che vuoi che Lambda assuma in ogni account dell'organizzazione. Questo ruolo crea il rapporto sulle credenziali. Nota: il ruolo non deve essere presente in tutti gli account in questa fase della creazione dello stack.

  7. In Parametri, aggiorna S3BucketName con il nome del bucket S3 in cui Lambda può memorizzare le credenziali per tutti gli account.

  8. Per il nome dello stack, inserisci il nome dello stack.

  9. Seleziona Invia.

  10. Nota il nome del ruolo della funzione Lambda.

Amministratore AWS

Crea una politica di autorizzazione IAM.

Crea una policy IAM per ogni account AWS della tua organizzazione con le seguenti autorizzazioni:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:GenerateCredentialReport", "iam:GetCredentialReport" ], "Resource": "*" } ] }
AWS DevOps, amministratore del cloud, architetto del cloud, ingegnere dei dati

Crea un ruolo IAM con una policy di fiducia.

  1. Crea un ruolo IAM per gli account AWS e allega la policy di autorizzazione creata nel passaggio precedente.

  2. Allega la seguente policy di fiducia al ruolo IAM:

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

Sostituisci arn:aws:iam::<MasterAccountID>:role/<LambdaRole> con l'ARN del ruolo Lambda che hai notato in precedenza.

Nota

Le organizzazioni in genere utilizzano l'automazione per creare ruoli IAM per i propri account AWS. Ti consigliamo di utilizzare questa automazione, se disponibile. In alternativa, puoi utilizzare lo CreateRoleforOrg.py script dal repository del codice. Lo script richiede un ruolo amministrativo esistente o qualsiasi altro ruolo IAM che disponga dell'autorizzazione a creare una policy e un ruolo IAM in ogni account AWS.

Amministratore cloud, architetto cloud, amministratore AWS

Configura Amazon Quick Sight per visualizzare i dati.

  1. Accedi a Quick Suite con le tue credenziali.

  2. Crea un set di dati utilizzando Athena (utilizzando iamcredreportdb il database "cfn_iamcredreport" e la tabella), quindi aggiorna automaticamente il set di dati.

  3. Crea un'analisi in Quick Sight.

  4. Crea una dashboard Quick Sight.

AWS DevOps, amministratore del cloud, architetto del cloud, ingegnere dei dati

Informazioni aggiuntive

Considerazioni aggiuntive

Considera i seguenti aspetti:

  • Dopo aver distribuito l' CloudFormation infrastruttura, puoi attendere che Lambda e AWS Glue vengano eseguiti secondo le rispettive pianificazioni, prima che i report vengano creati in Amazon S3 e analizzati da Athena. In alternativa, puoi eseguire Lambda manualmente per ottenere i report in Amazon S3, quindi eseguire il crawler AWS Glue per ottenere la tabella Athena creata dai dati.

  • Quick Suite è un potente strumento per l'analisi e la visualizzazione dei dati in base ai requisiti aziendali. Puoi utilizzare i parametri in Quick Suite per controllare i dati dei widget in base ai campi di dati che scegli. Inoltre, puoi utilizzare un'analisi Quick Suite per creare parametri (ad esempio, campi Account, Data e Utentepartition_0, come, user rispettivamentepartition_1, e) dal tuo set di dati per aggiungere controlli per i parametri Account, Data e Utente.

  • Per creare dashboard Quick Sight personalizzate, consulta Quick Suite Workshops dal sito Web di AWS Workshop Studio.

  • Per vedere esempi di dashboard Quick Sight, consulta il repository di GitHub getiamcredsreport-allaccounts-orgcodice.

Risultati aziendali mirati

È possibile utilizzare questo modello per ottenere i seguenti risultati aziendali mirati:

  • Identifica gli incidenti di sicurezza relativi agli utenti IAM: esamina ogni utente di ogni account AWS della tua organizzazione utilizzando un unico pannello di controllo. Puoi monitorare l'andamento delle singole regioni AWS a cui un utente IAM ha effettuato l'accesso più recente e dei servizi che ha utilizzato.

  • Tieni traccia della migrazione in tempo reale degli utenti IAM all'autenticazione SSO: utilizzando SSO, gli utenti possono accedere una sola volta con una singola credenziale e accedere a più account e applicazioni AWS. Se hai intenzione di migrare i tuoi utenti IAM a SSO, questo modello può aiutarti a passare all'SSO e tenere traccia di tutto l'utilizzo delle credenziali degli utenti IAM (come l'accesso alla Console di gestione AWS o l'uso delle chiavi di accesso) su tutti gli account AWS.

  • Tieni traccia delle regioni AWS a cui accedono gli utenti IAM: puoi controllare l'accesso degli utenti IAM alle regioni per vari scopi, come la sovranità dei dati e il controllo dei costi. Puoi anche tenere traccia dell'uso delle regioni da parte di qualsiasi utente IAM.

  • Resta conforme: seguendo il principio del privilegio minimo, puoi concedere solo le autorizzazioni IAM specifiche necessarie per eseguire un'attività specifica. Inoltre, puoi monitorare l'accesso ai servizi AWS, alla Console di gestione AWS e l'utilizzo delle credenziali a lungo termine.

  • Condividi informazioni con altre parti interessate: puoi condividere dashboard curate con altre parti interessate, senza concedere loro l'accesso ai report sulle credenziali IAM o agli account AWS.