Puoi connettere il livello Security Command Center Enterprise al tuo ambiente AWS in modo da completare quanto segue:
- Rilevare e correggere vulnerabilità e configurazioni errate del software nell'ambiente AWS
- Crea e gestisci una postura di sicurezza per AWS
- Identifica potenziali percorsi di attacco dalla rete internet pubblica alle tue risorse AWS
- Mappa la conformità delle risorse AWS a vari standard e benchmark
La connessione di Security Command Center ad AWS crea un unico posto in cui il team operativo di sicurezza può gestire e risolvere minacce e vulnerabilità in Google Cloud e AWS.
Per consentire a Security Command Center di monitorare l'organizzazione AWS, devi configurare una connessione utilizzando un agente di servizio Google Cloud e un account AWS che abbia accesso alle risorse da monitorare. Security Command Center utilizza questa connessione per raccogliere periodicamente metadati degli asset in tutti gli account e le regioni AWS che definisci.
Questo documento descrive come configurare la connessione con AWS. Quando configuri una connessione, devi configurare quanto segue:
- Una serie di account in AWS che hanno accesso diretto alle risorse AWS da monitorare. Nella console Google Cloud, questi account sono chiamati account da collettore.
- Un account in AWS che dispone dei criteri e dei ruoli appropriati per consentire l'autenticazione agli account raccoglitore. Nella console Google Cloud, questo account è denominato account delegato. Sia l'account delegato sia gli account raccoglitore devono trovarsi nella stessa organizzazione AWS.
- Un agente di servizio in Google Cloud che si connette all'account delegato per l'autenticazione.
- Una pipeline per raccogliere i dati delle risorse dalle risorse AWS.
Questa connessione non si applica alle funzionalità SIEM di Security Command Center che consentono di importare i log AWS per il rilevamento delle minacce.
Il seguente diagramma mostra questa configurazione. Il progetto tenant è un progetto creato automaticamente che contiene l'istanza della pipeline di raccolta dei dati degli asset.
Prima di iniziare
Completa queste attività prima di completare quelle rimanenti in questa pagina.
Attiva il livello Security Command Center Enterprise
Completa i passaggi 1 e 2 della guida alla configurazione per attivare il livello Enterprise di Security Command Center.
Configurare le autorizzazioni
Per ottenere le autorizzazioni necessarie per utilizzare il connettore AWS,
chiedi all'amministratore di concederti il ruolo IAM
Proprietario di asset cloud (roles/cloudasset.owner
).
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Crea account AWS
Assicurati di aver creato le seguenti risorse AWS:
- Un utente IAM AWS con accesso IAM AWS per le console degli account AWS del delegato e del raccoglitore.
L'ID account AWS per un account AWS che puoi utilizzare come account delegato. Se vuoi che Security Command Center rilevi automaticamente gli account AWS per trovare le risorse, l'account delegato deve essere collegato a un'organizzazione AWS ed essere uno dei seguenti:
Un account AWS con un criterio di delega basato sulle risorse che fornisce autorizzazioni
organization
elist
. Per un criterio di esempio, consulta Esempio: visualizzazione di organizzazione, UO, account e criteri.
Configura Security Command Center
Nella console Google Cloud, vai alla pagina di configurazione.
Verifica di visualizzare l'organizzazione per cui hai attivato il livello Security Command Center Enterprise.
Fai clic su Passaggio 3: configura il connettore Amazon Web Services (AWS).
In ID account delegato, inserisci l'ID account AWS per l'account AWS che puoi utilizzare come account delegato.
Se vuoi, puoi rivedere le opzioni avanzate.
Fai clic su Continua.
Completa una delle seguenti operazioni:
- Scaricare i modelli CloudFormation per il ruolo delegato e il ruolo raccoglitore.
- Se hai configurato le opzioni avanzate o devi modificare i nomi dei ruoli AWS predefiniti (aws-delegated-role e aws-collector-role), seleziona Utilizza la console AWS. Copia l'ID agente di servizio, il nome ruolo delegato e il nome ruolo raccoglitore.
Non puoi modificare i nomi dei ruoli dopo aver creato la connessione.
Non fare clic su Crea. Puoi invece configurare l'ambiente AWS.
Configura il tuo ambiente AWS
Puoi configurare l'ambiente AWS utilizzando uno dei seguenti metodi:
- Utilizza i modelli CloudFormation che hai scaricato in Configura Security Command Center. Per le istruzioni, vedi Utilizzare i modelli CloudFormation per configurare l'ambiente AWS.
- Se utilizzi impostazioni personalizzate o nomi dei ruoli, configura gli account AWS manualmente. Per le istruzioni, vedi Configurare gli account AWS manualmente.
Usa i modelli CloudFormation per configurare l'ambiente AWS
Se hai scaricato modelli CloudFormation, segui questi passaggi per configurare l'ambiente AWS.
- Accedi alla console per gli account delegati AWS. Assicurati di aver eseguito l'accesso all'account delegato che utilizzi per utilizzare altri account AWS da raccolta.
- Vai alla console AWS CloudFormation Template.
- Fai clic su Stack > Con nuove risorse (standard).
- Carica il file del modello di ruolo delegato e fai clic su Avanti.
- Inserisci un nome per lo stack. Se hai modificato il nome del ruolo del ruolo delegato, aggiorna i parametri. Fai clic su Avanti.
- Come richiesto dalla tua organizzazione, aggiorna le opzioni dello stack e fai clic su Avanti.
Controlla le informazioni e fai clic su Invia. Attendi che venga creato lo stack. Se si verifica un problema, consulta la sezione Risoluzione dei problemi.
Se scegli di aggiungere singoli account AWS (disabilitando il rilevamento automatico per gli account), puoi anche creare stack separati per ciascun account AWS, anziché creare un singolo set di stack.
Utilizzando un account di gestione AWS o qualsiasi account membro registrato come amministratore delegato, fai clic su Stackset > Crea StackSet.
Fai clic su Autorizzazioni gestite dal servizio.
Carica il file del modello di ruolo del raccoglitore. Fai clic su Avanti.
Nella pagina Specifica i dettagli dell'insieme di stack, inserisci il nome e la descrizione dell'insieme di stack. Verifica e aggiorna l'ID account delegato e i nomi dei ruoli. Fai clic su Avanti.
In base alle esigenze della tua organizzazione, configura le opzioni del set di stack. Fai clic su Avanti.
Nella pagina Imposta opzioni di deployment, completa quanto segue:
Scegli le destinazioni del deployment. Puoi eseguire il deployment nell'intera organizzazione AWS o eseguire il deployment in un'unità organizzativa che include tutti gli account AWS da cui vuoi raccogliere i dati.
Specifica le regioni AWS in cui creare ruoli e criteri. Poiché i ruoli sono risorse globali, non devi specificare più regioni.
Modifica altre impostazioni, se necessario, poi fai clic su Avanti.
Esamina le modifiche e fai clic su Invia. Se ricevi un errore, consulta la sezione Risoluzione dei problemi.
Esegui il deployment di uno stack separato per eseguire il provisioning del ruolo raccoglitore nell'account di gestione, poiché un set di stack AWS CloudFormation non crea istanze dello stack in un account di gestione. Per maggiori informazioni, consulta DeploymentTargets.
Per completare la procedura di integrazione, consulta Completare il processo di integrazione.
Configura manualmente gli account AWS
Se non puoi utilizzare i modelli CloudFormation (ad esempio se utilizzi nomi di ruolo diversi o stai personalizzando l'integrazione), puoi creare manualmente i criteri e i ruoli AWS IAM richiesti.
Devi creare criteri e ruoli AWS IAM per l'account delegato e gli account raccoglitore.
Crea il criterio AWS IAM per il ruolo delegato
Per creare un criterio AWS IAM per il ruolo delegato (criterio delegato), completa quanto segue:
Accedi alla console dell'account delegato AWS.
Fai clic su Norme > Crea criterio.
Fai clic su JSON e incolla quanto segue:
{ "Version": "2012-10-17", "Statement": [ { "Action": "sts:AssumeRole", "Resource": "arn:aws:iam::*:role/COLLECTOR_ROLE_NAME", "Effect": "Allow" }, { "Action": [ "organizations:List*", "organizations:Describe*" ], "Resource": "*", "Effect": "Allow" } ] }
Sostituisci
COLLECTOR_ROLE_NAME
con il nome del ruolo raccoglitore che hai copiato durante la configurazione di Security Command Center (il valore predefinito èaws-collector-role
).Fai clic su Avanti.
Nella sezione Dettagli norme, inserisci un nome e una descrizione per la norma.
Fai clic su Crea criterio.
Crea un ruolo AWS IAM per la relazione di attendibilità tra AWS e Google Cloud
Creare un ruolo delegato che configuri una relazione di fiducia tra AWS e Google Cloud. Questo ruolo utilizza il criterio delegato creato in Creare il criterio AWS IAM per il ruolo delegato.
Accedi alla console account delegato AWS come utente AWS in grado di creare ruoli e criteri IAM.
Fai clic su Ruoli > Crea ruolo.
Per Tipo di entità attendibile, fai clic su Identità web.
In Identity Provider (Provider di identità), fai clic su Google.
In Pubblico, inserisci l'ID account di servizio che hai copiato durante la configurazione di Security Command Center. Fai clic su Next (Avanti).
Per concedere al ruolo delegato l'accesso ai ruoli raccoglitore, collega i criteri di autorizzazione al ruolo. Cerca il criterio delegato creato in Crea il criterio AWS IAM per il ruolo delegato e selezionalo.
Nella sezione Dettagli ruolo, inserisci il Nome ruolo delegato che hai copiato durante la configurazione di Security Command Center (il nome predefinito è
aws-delegated-role
).Fai clic su Crea ruolo.
Crea il criterio AWS IAM per la raccolta dei dati degli asset
Per creare un criterio AWS IAM per la raccolta dei dati degli asset (criterio del raccoglitore), completa quanto segue:
Accedi alla console dell'account del raccoglitore AWS.
Fai clic su Norme > Crea criterio.
Fai clic su JSON e incolla quanto segue:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ce:GetCostAndUsage", "dynamodb:DescribeTableReplicaAutoScaling", "identitystore:ListGroupMemberships", "identitystore:ListGroups", "identitystore:ListUsers", "lambda:GetFunction", "lambda:GetFunctionConcurrency", "logs:ListTagsForResource", "s3express:GetBucketPolicy", "s3express:ListAllMyDirectoryBuckets", "wafv2:GetIPSet" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "apigateway:GET" ], "Resource": [ "arn:aws:apigateway:*::/usageplans", "arn:aws:apigateway:*::/usageplans/*/keys", "arn:aws:apigateway:*::/vpclinks/*" ] } ] }
Fai clic su Avanti.
Nella sezione Dettagli norme, inserisci un nome e una descrizione per la norma.
Fai clic su Crea criterio.
Ripeti questi passaggi per ogni account raccoglitore.
Crea il ruolo AWS IAM per la raccolta dei dati in ciascun account
Crea il ruolo raccoglitore che consente a Security Command Center di ottenere i dati degli asset da AWS. Questo ruolo utilizza il criterio del raccoglitore creato in Creare il criterio AWS IAM per la raccolta dei dati degli asset.
Accedi alla console account del raccoglitore AWS come utente che possa creare ruoli IAM per gli account raccoglitore.
Fai clic su Ruoli > Crea ruolo.
Per Tipo di entità attendibile, fai clic su Criterio di attendibilità personalizzato.
Nella sezione Criterio di attendibilità personalizzato, incolla quanto segue:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::DELEGATE_ACCOUNT_ID:role/DELEGATE_ACCOUNT_ROLE" }, "Action": "sts:AssumeRole" } ] }
Sostituisci quanto segue:
DELEGATE_ACCOUNT_ID
: l'ID account AWS per l'account delegatoDELEGATE_ACCOUNT_ROLE
: il Nome ruolo delegato che hai copiato durante la configurazione di Security Command Center.
Per concedere al ruolo raccoglitore l'accesso ai dati di configurazione degli asset AWS, collega i criteri di autorizzazione al ruolo. Cerca il criterio del raccoglitore personalizzato creato in Crea il criterio AWS IAM per la raccolta dei dati degli asset e selezionalo.
Cerca e seleziona i seguenti criteri gestiti:
- arn:aws:iam::aws:policy/job-function/ViewOnlyAccess
- arn:aws:iam::aws:policy/SecurityAudit
Nella sezione Dettagli ruolo, inserisci il Nome ruolo Collector che hai copiato durante la configurazione di Security Command Center.
Fai clic su Crea ruolo.
Ripeti questi passaggi per ogni account raccoglitore.
Per completare la procedura di integrazione, consulta Completare il processo di integrazione.
Completa la procedura di integrazione
Nella console Google Cloud, vai alla pagina Aggiungi connettore Amazon Web Services.
Fai clic su Testa il connettore per verificare che Security Command Center sia in grado di connettersi all'ambiente AWS. Se la connessione ha esito positivo, l'agente di servizio Google Cloud può assumere il ruolo delegato e il ruolo delegato dispone di tutte le autorizzazioni necessarie per assumere il ruolo raccoglitore. Se la connessione non va a buon fine, consulta la pagina Risolvere gli errori durante il test della connessione.
Fai clic su Crea.
Configurazione personalizzata
Questa sezione descrive alcuni modi in cui puoi personalizzare la connessione tra Security Command Center e AWS. Queste opzioni sono disponibili nella sezione Opzioni avanzate (facoltative) della pagina Aggiungi connettore Amazon Web Services della console Google Cloud.
Per impostazione predefinita, Security Command Center rileva automaticamente i tuoi account AWS in tutte le regioni AWS. La connessione utilizza l'endpoint globale predefinito per AWS Security Token Service e le query predefinite al secondo (QPS) per il servizio AWS che stai monitorando. Queste opzioni avanzate ti consentono di personalizzare i valori predefiniti.
Opzione | Descrizione |
---|---|
Specifica quali account AWS utilizzare | Puoi consentire a Security Command Center di rilevare automaticamente gli account AWS oppure fornire un elenco di account AWS che Security Command Center può utilizzare per trovare le risorse. |
Specifica gli account AWS da escludere | Se consenti a Security Command Center di rilevare automaticamente gli account, puoi fornire un elenco di account AWS che Security Command Center non può utilizzare per trovare le risorse. |
Specifica le regioni AWS da monitorare | Puoi selezionare una o più regioni AWS da monitorare con Security Command Center. Lascia vuoto il campo Regioni AWS per monitorare tutte le regioni. |
Esegui l'override delle query al secondo (QPS) predefinite per i servizi AWS | Puoi modificare il valore QPS per controllare il limite quota per
Security Command Center. Imposta l'override su un valore inferiore al valore predefinito per il servizio e maggiore o uguale a 1 . Il valore predefinito è il valore massimo. Se modifichi il valore QPS, Security Command Center potrebbe riscontrare problemi durante il recupero dei dati. Pertanto, non è consigliabile modificare questo valore. |
Cambia l'endpoint per il servizio token di sicurezza AWS | Puoi specificare un endpoint specifico per AWS Security Token Service (ad esempio, https://sts.us-east-2.amazonaws.com ). Lascia vuoto il campo AWS Security Token Service (AWS STS) (facoltativo) per utilizzare l'endpoint globale predefinito (https://sts.amazonaws.com ). |
Risoluzione dei problemi
Questa sezione include alcuni problemi comuni che potresti riscontrare durante l'integrazione di Security Command Center con AWS.
Le risorse esistono già
Questo errore si verifica nell'ambiente AWS quando provi a creare i criteri AWS IAM e i ruoli AWS IAM. Questo problema si verifica quando il ruolo esiste già nel tuo account AWS e stai tentando di crearlo di nuovo.
Per risolvere il problema, completa i seguenti passaggi:
- Verifica se il ruolo o il criterio che stai creando esiste già e se soddisfa i requisiti elencati in questa guida.
- Se necessario, modifica il nome del ruolo per evitare conflitti.
Entità non valida nel criterio
Questo errore può verificarsi nell'ambiente AWS quando crei i ruoli di raccoglitore, ma il ruolo delegato non esiste ancora.
Per risolvere questo problema, completa i passaggi descritti in Creare il criterio AWS IAM per il ruolo delegato e attendi che venga creato il ruolo delegato prima di continuare.
Limitazioni della limitazione in AWS
AWS limita le richieste API per ogni account AWS in base al singolo account o alla regione. Per garantire che questi limiti non vengano superati quando Security Command Center raccoglie i metadati degli asset da AWS, Security Command Center raccoglie i dati a un QPS massimo fisso per ogni servizio AWS, come descritto nella documentazione dell'API per il servizio AWS.
Se riscontri una limitazione delle richieste nel tuo ambiente AWS a causa del numero di QPS utilizzato, puoi mitigare il problema completando quanto segue:
Nella pagina delle impostazioni del connettore AWS, imposta un valore QPS personalizzato per il servizio AWS che presenta problemi di limitazione delle richieste.
Limita le autorizzazioni del ruolo del raccoglitore AWS in modo che i dati da quel servizio specifico non vengano più raccolti. Questa tecnica di mitigazione impedisce alle simulazioni del percorso di attacco di funzionare correttamente per AWS.
La revoca di tutte le autorizzazioni in AWS interrompe immediatamente il processo di raccolta dati. L'eliminazione del connettore AWS non interrompe immediatamente il processo di raccolta dei dati, ma non verrà riavviato al termine.
Risoluzione degli errori durante il test della connessione
Questi errori possono verificarsi quando testi la connessione tra Security Command Center e AWS.
AWS_FAILED_TO_ASSUME_DELEGATED_ROLE
La connessione non è valida perché l'agente di servizio Google Cloud non può assumere il ruolo delegato.
Per risolvere il problema, considera quanto segue:
Verifica che esista il ruolo delegato. Per crearlo, consulta Creare un ruolo AWS IAM per la relazione di attendibilità tra AWS e Google Cloud.
Manca il criterio in linea del ruolo delegato. In caso contrario, l'agente di servizio non può assumere il ruolo. Per verificare che il criterio in linea esista, consulta Creare un ruolo AWS IAM per la relazione di attendibilità tra AWS e Google Cloud.
AWS_FAILED_TO_LIST_ACCOUNTS
La connessione non è valida perché il rilevamento automatico è abilitato e il ruolo delegato non può recuperare tutti gli account AWS nelle organizzazioni.
Questo problema indica che il criterio per consentire l'azione organizations:ListAccounts
sul ruolo delegato non è presente per determinate risorse. Per risolvere il problema, verifica quali risorse mancano. Per verificare
le impostazioni del criterio delegato, consulta
Creare il criterio AWS IAM per il ruolo delegato.
AWS_INVALID_COLLECTOR_ACCOUNTS
La connessione non è valida perché esistono account non validi del raccoglitore. Il messaggio di errore include ulteriori informazioni sulle possibili cause, tra cui:
AWS_FAILED_TO_ASSUME_COLLECTOR_ROLE
L'account raccoglitore non è valido perché il ruolo delegato non può assumere il ruolo raccoglitore nell'account raccoglitore.
Per risolvere il problema, considera quanto segue:
Verifica che il ruolo raccoglitore esista. Per crearlo, consulta Creare il ruolo AWS IAM per la raccolta dei dati in ciascun account.
Manca il criterio per consentire al ruolo delegato di assumere il ruolo raccoglitore. Per verificare che il criterio esista, consulta Creare il criterio AWS IAM per il ruolo delegato.
AWS_COLLECTOR_ROLE_POLICY_MISSING_REQUIRED_PERMISSION
La connessione non è valida perché nel criterio del raccoglitore mancano alcune impostazioni di autorizzazione richieste.
Per risolvere il problema, considera le seguenti cause:
Alcuni dei criteri gestiti da AWS richiesti potrebbero non essere collegati al ruolo raccoglitore. Per verificare che tutti i criteri siano collegati, consulta il passaggio 6 in Creare il ruolo AWS IAM per la raccolta dei dati in ciascun account.
Il criterio del raccoglitore potrebbe non esistere. Per crearlo, consulta Creare il criterio AWS IAM per la raccolta dei dati degli asset.
Il criterio del raccoglitore non è collegato al ruolo del raccoglitore. Per verificare che sia collegato, consulta Creare il criterio AWS IAM per la raccolta dei dati degli asset.
Il criterio del raccoglitore non include tutte le autorizzazioni richieste. Per l'elenco delle autorizzazioni richieste, Crea il criterio AWS IAM per la raccolta dei dati degli asset.
Passaggi successivi
- Continua con il passaggio 4 della guida alla configurazione nella console.
- Esaminare e correggere i risultati di vulnerabilità forniti da AWS.
- Crea e gestisci una postura di sicurezza per AWS.
- Crea simulazioni del percorso di attacco per le risorse AWS.
- Mappa la conformità delle risorse AWS a vari standard e benchmark.