Seguire le best practice per Cloud Audit Logs aiuta la tua organizzazione a mantenere la sicurezza, controllare l'accesso ai dati di log sensibili e ridurre al minimo i rischi. Sebbene non sia esaustiva, la sequenza di attività consigliata in questo documento ti aiuta a comprendere l'ambito delle attività di audit logging e a pianificare la configurazione del logging.
Informazioni su Cloud Audit Logs
Gli audit log sono disponibili per la maggior parte dei servizi Google Cloud . Cloud Audit Logs fornisce i seguenti tipi di audit log per ogni progetto, account di fatturazione, cartella e organizzazioneGoogle Cloud :
| Tipo di audit log | Configurabile | Addebitabile |
|---|---|---|
| Audit log delle attività di amministrazione | No; always written | No |
| Audit log degli accessi ai dati | Sì | Sì |
| Audit log negati da criteri | Sì; puoi escludere questi log dalla scrittura nei bucket di log | Sì |
| Audit log degli eventi di sistema | No; always written | No |
Gli audit log per l'accesso ai dati, tranne quelli di BigQuery, sono disabilitati per impostazione predefinita. Se vuoi che gli audit log di accesso ai dati vengano scritti per i servizi Google Cloud, devi abilitarli esplicitamente. Per maggiori dettagli, consulta Configura gli audit log di accesso ai dati in questa pagina.
Per informazioni sul panorama generale dell'audit logging conGoogle Cloud, consulta Panoramica di Cloud Audit Logs.
Controllo dell'accesso ai log
A causa della sensibilità dei dati di audit logging, è particolarmente importante configurare i controlli degli accessi appropriati per gli utenti della tua organizzazione.
A seconda dei requisiti di conformità e utilizzo, imposta questi controlli di accesso come segue:
- Imposta le autorizzazioni IAM
- Configura le visualizzazioni log
- Imposta i controlli degli accessi a livello di campo per le voce di log
Imposta autorizzazioni IAM
Le autorizzazioni e i ruoli IAM determinano la capacità degli utenti di accedere ai dati degli audit log nell'API Logging, in Esplora log e in Google Cloud CLI. Utilizza IAM per concedere un accesso granulare a bucketGoogle Cloud specifici e impedire l'accesso indesiderato ad altre risorse.
I ruoli basati sulle autorizzazioni che concedi agli utenti dipendono dalle loro funzioni relative all'audit all'interno della tua organizzazione. Ad esempio, potresti concedere al tuo CTO ampie autorizzazioni amministrative, mentre i membri del team di sviluppo potrebbero richiedere autorizzazioni di visualizzazione dei log. Per indicazioni su quali ruoli concedere agli utenti della tua organizzazione, consulta Configurazione dei ruoli per l'audit logging.
Quando imposti le autorizzazioni IAM, applica il principio di sicurezza del privilegio minimo, in modo da concedere agli utenti solo l'accesso necessario alle tue risorse:
- Rimuovi tutti gli utenti non essenziali.
- Concedi agli utenti essenziali le autorizzazioni corrette e minime.
Per istruzioni sull'impostazione delle autorizzazioni IAM, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Configurazione delle visualizzazioni log
Tutti i log, inclusi gli audit log, ricevuti da Logging vengono scritti in contenitori di archiviazione chiamati bucket di log. Le visualizzazioni dei log consentono di controllare chi può accedere ai log all'interno dei bucket di log.
Poiché i bucket di log possono contenere log di più progetti Google Cloud , potresti dover controllare da quali progetti Google Cloud i diversi utenti possono visualizzare i log. Creare visualizzazioni dei log personalizzate, che offrono un controllo degli accessi più granulare per questi bucket.
Puoi eseguire query sulle visualizzazioni dei log con Esplora log o con Observability Analytics. Per saperne di più, consulta Panoramica delle query e della visualizzazione dei log.
Per istruzioni sulla creazione e sulla gestione delle visualizzazioni dei log, consulta Configura le visualizzazioni dei log su un bucket di log.
Imposta i controlli degli accessi a livello di campo dei log
I controlli degli accessi a livello di campo ti consentono di nascondere singoli campi LogEntry agli utenti di un progetto Google Cloud , offrendoti un modo più granulare per controllare i dati dei log a cui un utente può accedere. Rispetto alle visualizzazioni dei log, che nascondono l'intero LogEntry, i controlli degli accessi a livello di campo nascondono i singoli campi di LogEntry. Ad esempio, potresti voler oscurare le PII degli utenti esterni, come un indirizzo email contenuto nel payload della voce di log, per la maggior parte degli utenti della tua organizzazione.
Se prevedi di utilizzare Observability Analytics per analizzare gli audit log, non configurare i controlli degli accessi a livello di campo nel bucket di log in cui sono archiviati i log. Non puoi utilizzare Observability Analytics sui bucket di log in cui sono configurati controlli degli accessi a livello di campo.
Per istruzioni sulla configurazione dei controlli dell'accesso a livello di campo, consulta Configura l'accesso a livello di campo.
Configurazione degli audit log di accesso ai dati
Quando attivi nuovi servizi Google Cloud , valuta se attivare o meno i log di controllo dell'accesso ai dati.
Gli audit log di accesso ai dati aiutano l'Assistenza Google a risolvere i problemi relativi al tuo account. Pertanto, ti consigliamo di attivare i log di controllo dell'accesso ai dati, se possibile.
Per abilitare tutti gli audit log per tutti i servizi, segui le istruzioni per aggiornare la policy di Identity and Access Management (IAM) con la configurazione elencata nella policy di controllo.
Dopo aver definito la policy di accesso ai dati a livello di organizzazione e aver abilitato gli audit log di accesso ai dati, utilizza un progetto Google Cloud di test per convalidare la configurazione della raccolta degli audit log prima di creare progetti Google Cloud di sviluppo e di produzione nell'organizzazione.
Per istruzioni su come abilitare i log di controllo dell'accesso ai dati, consulta Abilita i log di controllo dell'accesso ai dati.
Controlla la modalità di archiviazione dei log
Puoi configurare aspetti dei bucket della tua organizzazione e creare bucket definiti dall'utente per centralizzare o suddividere lo spazio di archiviazione dei log. A seconda dei requisiti di conformità e utilizzo, potresti voler personalizzare l'archiviazione dei log come segue:
- Scegli dove archiviare i log.
- Definisci il periodo di conservazione dei dati.
- Proteggi i tuoi log con le chiavi di crittografia gestite dal cliente (CMEK).
Scegli dove archiviare i log
In Logging, i bucket sono risorse regionali: l'infrastruttura che archivia, indicizza e cerca i log si trova in una posizione geografica specifica.
La tua organizzazione potrebbe essere tenuta ad archiviare i dati dei log in regioni specifiche. I fattori principali per la selezione della regione in cui vengono archiviati i log includono il rispetto dei requisiti di latenza, disponibilità o conformità della tua organizzazione.
Per applicare automaticamente una determinata regione di archiviazione ai nuovi bucket _Default e _Required creati nella tua organizzazione, puoi configurare una località predefinita delle risorse.
Per istruzioni su come configurare le località delle risorse predefinite, consulta Configura le impostazioni predefinite per le organizzazioni.
Definisci i periodi di conservazione dei dati
Cloud Logging conserva i log in base alle regole di conservazione applicabili al tipo di bucket di log in cui sono contenuti.
Per soddisfare le tue esigenze di conformità, configura Cloud Logging in modo che conservi i log per un periodo compreso tra 1 giorno e3650 days. Le regole di conservazione personalizzate si applicano a tutti i log di un bucket, indipendentemente dal tipo di log o dal fatto che il log sia stato copiato da un'altra posizione.
Per istruzioni su come impostare le regole di conservazione per un bucket di log, consulta Configura la conservazione personalizzata.
Proteggi gli audit log con chiavi di crittografia gestite dal cliente
Per impostazione predefinita, Cloud Logging cripta i contenuti dei clienti archiviati at-rest. La tua organizzazione potrebbe avere requisiti di crittografia avanzati che la crittografia at-rest predefinita non fornisce. Per soddisfare i requisiti della tua organizzazione, invece di far gestire a Google le chiavi di crittografia della chiave che proteggono i tuoi dati, configura le chiavi di crittografia gestite dal cliente (CMEK) per controllare e gestire la tua crittografia.
Per istruzioni sulla configurazione di CMEK, consulta Configura CMEK per l'archiviazione dei log.
Prezzi
Per informazioni sui prezzi, consulta la pagina Prezzi di Google Cloud Observability. Se esegui il routing dei dati di log ad altri servizi Google Cloud , consulta i seguenti documenti:
Durante la configurazione e l'utilizzo degli audit log, ti consigliamo di seguire queste best practice relative ai prezzi:
Stima le tue fatture visualizzando i dati di utilizzo e configurando le policy di avviso.
Tieni presente che i log di controllo dell'accesso ai dati possono essere di grandi dimensioni e che potresti incorrere in costi aggiuntivi per l'archiviazione.
Gestisci i costi escludendo gli audit log che non sono utili. Ad esempio, probabilmente puoi escludere i log di controllo dell'accesso ai dati nei progetti di sviluppo.
Esegui query e visualizza gli audit log
Se devi risolvere i problemi, è necessario poter esaminare rapidamente i log. Nella console Google Cloud , utilizza Esplora log per recuperare le voci di audit log per la tua organizzazione:
-
Nella console Google Cloud , vai alla pagina Esplora log:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.
Seleziona la tua organizzazione.
Nel riquadro Query, segui questi passaggi:
In Tipo di risorsa seleziona la risorsa Google Cloud di cui vuoi visualizzare gli audit log.
In Nome log seleziona il tipo di audit log che vuoi visualizzare:
- Per gli audit log Attività di amministrazione, seleziona activity.
- Per gli audit log Accesso ai dati, seleziona data_access.
- Per gli audit log Evento di sistema, seleziona system_event.
- Per gli audit log Policy negata, seleziona policy.
Se non vedi queste opzioni, significa che non sono disponibili audit log di questo tipo nell'organizzazione.
Nell'editor di query, specifica ulteriormente le voci dei log di controllo che vuoi visualizzare. Per esempi di query comuni, consulta Query di esempio con Esplora log.
Fai clic su Esegui query.
Per saperne di più sull'esecuzione di query utilizzando Esplora log, consulta Crea query in Esplora log.
Monitora gli audit log
Puoi utilizzare Cloud Monitoring per ricevere notifiche quando si verificano le condizioni che descrivi. Per fornire a Cloud Monitoring i dati dei tuoi log, Logging ti consente di creare policy di avviso basate su log, che ti avvisano ogni volta che un evento specifico viene visualizzato in un log.
Configura le policy di avviso per distinguere tra eventi che richiedono un'indagine immediata ed eventi con priorità bassa. Ad esempio, se vuoi sapere quando un audit log registra un determinato messaggio di accesso ai dati, puoi creare una criterio di avviso basata su log che corrisponda al messaggio e ti avvisi quando viene visualizzato.
Per istruzioni sulla configurazione delle policy di avviso basate su log, consulta Gestione delle policy di avviso basate su log.
Instrada i log verso destinazioni supportate
La tua organizzazione potrebbe dover soddisfare requisiti per la creazione e la conservazione degli audit log. Utilizzando i sink, puoi instradare alcuni o tutti i log verso queste destinazioni supportate:
- Un altro bucket Cloud Logging
Determina se hai bisogno di sink a livello di cartella o di organizzazione e instrada i log da tutti i progetti Google Cloud all'interno dell'organizzazione o della cartella utilizzando i sink aggregati. Ad esempio, potresti prendere in considerazione questi casi d'uso del routing:
Sink a livello di organizzazione: se la tua organizzazione utilizza un SIEM per gestire più audit log, ti consigliamo di eseguire il routing di tutti gli audit log della tua organizzazione. Pertanto, un sink a livello di organizzazione è la soluzione ideale.
Sink a livello di cartella: a volte, potresti voler instradare solo gli audit log di un reparto. Ad esempio, se hai una cartella "Finanza" e una cartella "IT", potrebbe essere utile instradare solo gli audit log appartenenti alla cartella "Finanza" o viceversa.
Per saperne di più su cartelle e organizzazioni, consulta Gerarchia delle risorse.
Applica alla destinazione Google Cloud che utilizzi per instradare i log le stesse policy di accesso che hai applicato a Esplora log.
Per istruzioni sulla creazione e sulla gestione dei sink aggregati, consulta Raccogli e instrada i log a livello di organizzazione verso destinazioni supportate.
Informazioni sul formato dei dati nelle destinazioni sink
Quando esegui il routing degli audit log verso destinazioni esterne a Cloud Logging, comprendi il formato dei dati inviati.
Ad esempio, se esegui il routing dei log a BigQuery, Cloud Logging applica regole per abbreviare i nomi dei campi dello schema BigQuery per gli audit log e per determinati campi del payload strutturato.
Per comprendere e trovare le voci di log che hai instradato da Cloud Logging alle destinazioni supportate, consulta Visualizza i log nelle destinazioni sink.
Copia delle voci di log
A seconda delle esigenze di conformità della tua organizzazione, potresti dover condividere le voci di log degli audit log con revisori esterni a Logging. Se devi condividere voci di log già archiviate nei bucket Cloud Logging, puoi copiarle manualmente nei bucket Cloud Storage.
Quando copi le voci di log in Cloud Storage, queste rimangono anche nel bucket di log da cui sono state copiate.
Tieni presente che le operazioni di copia non sostituiscono i sink, che inviano automaticamente tutte le voci di log in entrata a una destinazione di archiviazione supportata preselezionata, tra cui Cloud Storage.
Per istruzioni su come instradare i log a Cloud Storage in modo retroattivo, consulta Copia le voci di log.