Gestione di identità e accessi

Last reviewed 2023-08-08 UTC

Questo documento nel framework dell'architettura Google Cloud fornisce le best practice per la gestione di identità e accessi.

La pratica della gestione di identità e accessi (generalmente definita IAM) ti aiuta a garantire che le persone giuste possano accedere alle risorse giuste. IAM si occupa dei seguenti aspetti dell'autenticazione e dell'autorizzazione:

  • Gestione dell'account, incluso il provisioning
  • Governance dell'identità
  • Autenticazione
  • Controllo dell'accesso (autorizzazione)
  • Federazione delle identità

La gestione di IAM può essere difficile quando hai ambienti diversi o utilizzi più provider di identità. Tuttavia, è fondamentale configurare un sistema in grado di soddisfare le tue esigenze aziendali e di ridurre i rischi.

I suggerimenti in questo documento ti aiutano a esaminare i tuoi criteri e procedure IAM attuali e determinare quali di questi potresti dover modificare per i tuoi carichi di lavoro in Google Cloud. Ad esempio, devi esaminare quanto segue:

  • Se puoi utilizzare i gruppi esistenti per gestire l'accesso o se devi crearne di nuovi.
  • I tuoi requisiti di autenticazione (ad esempio autenticazione a più fattori (MFA) mediante un token).
  • L'impatto degli account di servizio sui criteri attuali.
  • Se utilizzi Google Cloud per il ripristino di emergenza, mantieni un'adeguata separazione dei compiti.

In Google Cloud, utilizzi Cloud Identity per autenticare i tuoi utenti e le risorse e il prodotto Identity and Access Management (IAM) di Google per determinare l'accesso alle risorse. Gli amministratori possono limitare l'accesso a livello di organizzazione, cartella, progetto e risorsa. I criteri IAM di Google determinano chi può fare cosa su quali risorse. I criteri IAM configurati correttamente contribuiscono a proteggere il tuo ambiente impedendo l'accesso non autorizzato alle risorse.

Per saperne di più, consulta la panoramica della gestione di identità e accessi.

Utilizzare un singolo provider di identità.

Molti dei nostri clienti dispongono di account utente gestiti e di cui viene eseguito il provisioning da provider di identità esterni a Google Cloud. Google Cloud supporta la federazione con la maggior parte dei provider di identità e con le directory on-premise come Active Directory.

La maggior parte dei provider di identità consente di abilitare il Single Sign-On (SSO) per gli utenti e i gruppi. Per le applicazioni di cui esegui il deployment su Google Cloud e che utilizzano il tuo provider di identità esterno, puoi estendere il provider a Google Cloud. Per maggiori informazioni, consulta Architetture di riferimento e Pattern per l'autenticazione degli utenti aziendali in un ambiente ibrido.

Se non hai un provider di identità esistente, puoi utilizzare Cloud Identity Premium o Google Workspace per gestire le identità per i tuoi dipendenti.

Proteggere l'account super amministratore

L'account super amministratore (gestito da Google Workspace o Cloud Identity) ti consente di creare la tua organizzazione Google Cloud. Questo account amministratore dispone quindi di privilegi elevati. Ecco alcune best practice per questo account:

  • Crea un nuovo account a questo scopo; non utilizzare un account utente esistente.
  • Crea e proteggi gli account di backup.
  • Attiva MFA.

Per ulteriori informazioni, consulta le Best practice per gli account super amministratore.

Pianifica l'utilizzo degli account di servizio

Un account di servizio è un Account Google che le applicazioni possono utilizzare per chiamare l'API Google di un servizio.

A differenza degli account utente, gli account di servizio vengono creati e gestiti all'interno di Google Cloud. Inoltre, l'autenticazione degli account di servizio è diversa rispetto agli account utente:

  • Per consentire a un'applicazione in esecuzione su Google Cloud di eseguire l'autenticazione utilizzando un account di servizio, puoi collegare un account di servizio alla risorsa di computing su cui viene eseguita l'applicazione.
  • Per consentire a un'applicazione in esecuzione su GKE di eseguire l'autenticazione utilizzando un account di servizio, puoi utilizzare Workload Identity.
  • Per consentire alle applicazioni in esecuzione al di fuori di Google Cloud di eseguire l'autenticazione con un account di servizio, puoi utilizzare Federazione delle identità per i carichi di lavoro

Quando utilizzi gli account di servizio, devi valutare una segregazione adeguata dei compiti durante il processo di progettazione. Prendi nota delle chiamate API che devi effettuare e determina gli account di servizio e i ruoli associati richiesti dalle chiamate API. Ad esempio, se stai configurando un data warehouse BigQuery, probabilmente hai bisogno di identità per almeno i seguenti processi e servizi:

  • Cloud Storage o Pub/Sub, a seconda che tu stia fornendo un file batch o creando un servizio di streaming.
  • Dataflow e Sensitive Data Protection per anonimizzare i dati sensibili.

Per ulteriori informazioni, consulta le best practice per l'utilizzo degli account di servizio.

Aggiorna i processi di identità per il cloud

La governance dell'identità consente di tenere traccia degli accessi, dei rischi e delle violazioni dei criteri in modo da poter soddisfare i requisiti normativi. Questa governance richiede la presenza di processi e criteri in modo da poter concedere e controllare ruoli e autorizzazioni per il controllo dell'accesso agli utenti. I processi e i criteri devono riflettere i requisiti dei tuoi ambienti, ad esempio test, sviluppo e produzione.

Prima di eseguire il deployment dei carichi di lavoro su Google Cloud, rivedi i processi di identità attuali e aggiornali, se opportuno. Assicurati di pianificare in modo appropriato i tipi di account di cui la tua organizzazione ha bisogno e di aver compreso bene il loro ruolo e i requisiti di accesso.

Per aiutarti a verificare le attività IAM di Google, Google Cloud crea audit log, che includono quanto segue:

  • Attività dell'amministratore. Questo logging non può essere disabilitato.
  • Attività di accesso ai dati. Devi enable questo logging.

Se necessario per scopi di conformità o se vuoi configurare l'analisi dei log (ad esempio con il tuo sistema SIEM), puoi esportare i log. Poiché i log possono aumentare i requisiti di archiviazione, potrebbero influire sui costi. Assicurati di registrare solo le azioni richieste e di impostare pianificazioni di conservazione appropriate.

Configurare SSO e MFA.

Il tuo provider di identità gestisce l'autenticazione degli account utente. Le identità federate possono eseguire l'autenticazione su Google Cloud utilizzando SSO. Per gli account con privilegi, come i super amministratori, è necessario configurare MFA. I token di sicurezza Titan sono token fisici che puoi utilizzare per l'autenticazione a due fattori (2FA) per prevenire gli attacchi di phishing.

Cloud Identity supporta la MFA utilizzando vari metodi. Per maggiori informazioni, consulta Applicare l'MFA uniforme alle risorse di proprietà dell'azienda.

Google Cloud supporta l'autenticazione per le identità dei carichi di lavoro mediante il protocollo OAuth 2.0 o i token web JSON (JWT) firmati. Per ulteriori informazioni sull'autenticazione dei carichi di lavoro, consulta Panoramica dell'autenticazione.

Implementare il privilegio minimo e la separazione dei compiti.

Devi assicurarti che le persone giuste accedano solo alle risorse e ai servizi di cui hanno bisogno per svolgere il proprio lavoro. In altre parole, devi seguire il principio del privilegio minimo. Inoltre, devi assicurarti che esista una separazione dei compiti adeguata.

Il provisioning eccessivo dell'accesso utente può aumentare il rischio di minacce interne, risorse configurate in modo errato e non conformità con i controlli. Le autorizzazioni di provisioning insufficiente possono impedire agli utenti di accedere alle risorse di cui hanno bisogno per completare le proprie attività.

Un modo per evitare l'overprovisioning è implementare l'accesso privilegiato just-in-time, ovvero fornire l'accesso con privilegi solo se necessario e concederlo solo temporaneamente.

Tieni presente che, quando viene creata un'organizzazione Google Cloud, a tutti gli utenti del tuo dominio vengono assegnati per impostazione predefinita i ruoli Creatore account di fatturazione e Autore progetto. Identificare gli utenti che svolgeranno queste mansioni e revocare i ruoli di altri utenti. Per saperne di più, consulta Creazione e gestione delle organizzazioni.

Per ulteriori informazioni su come funzionano i ruoli e le autorizzazioni in Google Cloud, consulta la Panoramica e la Panoramica dei ruoli nella documentazione di IAM. Per maggiori informazioni sull'applicazione del privilegio minimo, consulta Applicare il privilegio minimo con i suggerimenti sui ruoli.

Controlla l'accesso

Per monitorare le attività degli account con privilegi per rilevare eventuali deviazioni dalle condizioni approvate, utilizza Cloud Audit Logs. Cloud Audit Logs registra le azioni che i membri della tua organizzazione Google Cloud hanno eseguito nelle tue risorse Google Cloud. Puoi utilizzare vari tipi di log di controllo nei servizi Google. Per maggiori informazioni, consulta Using Cloud Audit Logs to Help Manage Insider Risk (video).

Utilizza il motore per suggerimenti IAM per tenere traccia dell'utilizzo e per modificare le autorizzazioni dove appropriato. I ruoli consigliati dal motore per suggerimenti IAM possono aiutarti a determinare quali ruoli concedere a un utente in base al suo comportamento passato e ad altri criteri. Per saperne di più, consulta le best practice per i suggerimenti sui ruoli.

Per controllare e controllare l'accesso alle risorse da parte del personale tecnico e dell'Assistenza Google, puoi utilizzare Access Transparency. Access Transparency registra le azioni intraprese dal personale di Google. Utilizza Access Approval, che fa parte di Access Transparency, per concedere l'approvazione esplicita ogni volta che viene eseguito l'accesso ai contenuti dei clienti. Per maggiori informazioni, vedi Controllare l'accesso ai dati da parte degli amministratori cloud.

Automatizza i controlli dei criteri

Imposta le autorizzazioni di accesso in modo programmatico, quando possibile. Per le best practice, consulta la sezione Vincoli dei criteri dell'organizzazione. Gli script Terraform per il progetto di base per le piattaforme aziendali si trovano nel repository di base di esempio.

Google Cloud include Policy Intelligence, che consente di rivedere e aggiornare automaticamente le autorizzazioni di accesso. Policy Intelligence include gli strumenti Motore per suggerimenti, Strumento per la risoluzione dei problemi relativi ai criteri e Analizzatore criteri che:

  • Fornisci suggerimenti per l'assegnazione dei ruoli IAM.
  • Monitora e contribuisci a prevenire criteri IAM eccessivamente permissivi.
  • Offre assistenza per la risoluzione dei problemi relativi al controllo dell'accesso.

Imposta limitazioni sulle risorse

Google IAM si concentra su chi e ti consente di autorizzare chi può agire su risorse specifiche in base alle autorizzazioni. Il servizio Criteri dell'organizzazione si concentra su cosa e ti consente di impostare restrizioni sulle risorse per specificare come possono essere configurate. Ad esempio, puoi utilizzare un criterio dell'organizzazione per:

Oltre a utilizzare i criteri dell'organizzazione per queste attività, puoi limitare l'accesso alle risorse utilizzando uno dei seguenti metodi:

  • Utilizza i tag per gestire l'accesso alle risorse senza definire le autorizzazioni di accesso per ogni risorsa. Aggiungi invece il tag e poi imposta la definizione di accesso per il tag stesso.
  • Utilizza le condizioni IAM per il controllo condizionale dell'accesso alle risorse basato su attributi.
  • Implementa la difesa in profondità utilizzando i Controlli di servizio VPC per limitare ulteriormente l'accesso alle risorse.

Per saperne di più sulla gestione delle risorse, consulta Gestione delle risorse.

Passaggi successivi

Scopri di più su IAM con le seguenti risorse: