Questo documento fornisce una panoramica concettuale di Cloud Audit Logs.
I servizi Google Cloud scrivono audit log che registrano le attività amministrative e gli accessi all'interno delle risorse Google Cloud. Gli audit log ti aiutano a rispondere alla domanda "Chi ha fatto cosa, dove e quando?" all'interno delle tue risorse Google Cloud con lo stesso livello di trasparenza degli ambienti on-premise. L'attivazione degli audit log consente alle entità di sicurezza, auditing e conformità di monitorare i dati e i sistemi di Google Cloud per rilevare eventuali vulnerabilità o usi impropri dei dati esterni.
Servizi Google Cloud che generano audit log
Per un elenco dei servizi Google Cloud che forniscono audit log, consulta Servizi Google Cloud con audit log. Tutti i servizi Google Cloud forniranno audit log.
Per una panoramica degli audit log di Google Workspace, consulta Audit log per Google Workspace.
Ruoli obbligatori
Per visualizzare gli audit log, devi disporre delle autorizzazioni e dei ruoli Identity and Access Management (IAM) appropriati:
-
Per ottenere le autorizzazioni necessarie per ottenere l'accesso di sola lettura agli audit log Attività degli amministratori, Rifiuto di criteri e Eventi di sistema, chiedi all'amministratore di concederti il ruolo IAM Visualizzatore log (
roles/logging.viewer
) nel progetto.Se disponi solo del ruolo Visualizzatore log
(roles/logging.viewer)
, non puoi visualizzare gli audit log di accesso ai dati nel bucket_Default
.
-
Per ottenere le autorizzazioni necessarie per accedere a tutti i log nei bucket
_Required
e_Default
, inclusi i log di accesso ai dati, chiedi all'amministratore di concederti il ruolo IAM Visualizzatore log privati (roles/logging.privateLogViewer
) nel progetto.Il ruolo Visualizzatore log privati
(roles/logging.privateLogViewer)
include le autorizzazioni contenute nel ruolo Visualizzatore log (roles/logging.viewer
) e quelle necessarie per leggere gli audit log di accesso ai dati nel bucket_Default
.
Per ulteriori informazioni sui ruoli e sulle autorizzazioni IAM applicati ai dati degli audit log, consulta Controllo dell'accesso con IAM.
Tipi di log di controllo
Cloud Audit Logs fornisce i seguenti audit log per ogni progetto, cartella e organizzazione Google Cloud:
- Audit log delle attività di amministrazione
- Audit log degli accessi ai dati
- Audit log degli eventi di sistema
- Audit log negati da criteri
Audit log delle attività di amministrazione
Gli audit log per le attività di amministrazione contengono voci di log per le chiamate API o altre azioni che modificano la configurazione o i metadati delle risorse. Ad esempio, questi log registrano quando gli utenti creano istanze VM o modificano le autorizzazioni di Identity and Access Management.
Gli audit log per le attività di amministrazione vengono sempre scritti; non puoi configurarli, escluderli o disattivarli. Anche se disattivi l'API Cloud Logging, gli audit log delle attività amministrative vengono comunque generati.
Per un elenco dei servizi che scrivono log di controllo delle attività di amministrazione e informazioni dettagliate sulle attività che generano questi log, consulta Servizi Google Cloud con audit log.
Audit log degli accessi ai dati
Gli audit log di accesso ai dati contengono chiamate API che leggono la configurazione o i metadati delle risorse, nonché chiamate API effettuate dagli utenti che creano, modificano o leggono i dati delle risorse forniti dall'utente.
Le risorse disponibili pubblicamente che hanno i criteri di Identity and Access Management
allAuthenticatedUsers
o
allUsers
non generano audit log. Le risorse
a cui è possibile accedere senza accedere a un account Google Cloud,
Google Workspace, Cloud Identity o Drive Enterprise non
generano log di controllo. Ciò contribuisce a proteggere le identità e le informazioni degli utenti finali.
Gli audit log di accesso ai dati, tranne quelli di accesso ai dati di BigQuery, sono disabilitati per impostazione predefinita perché possono essere abbastanza grandi. Se vuoi che gli audit log per l'accesso ai dati vengano scritti per servizi Google Cloud diversi da BigQuery, devi abilitarli esplicitamente. L'abilitazione dei log potrebbe comportare l'addebito al tuo progetto Google Cloud dell'utilizzo aggiuntivo dei log. Per istruzioni su come attivare e configurare gli audit log di accesso ai dati, consulta Attivare gli audit log di accesso ai dati.
Per un elenco dei servizi che scrivono log di controllo dell'accesso ai dati e informazioni dettagliate sulle attività che generano questi log, consulta Servizi Google Cloud con log di controllo.
Gli audit log per l'accesso ai dati vengono archiviati nel
_Default
, a meno che non li abbia inoltrati altrove. Per ulteriori informazioni, consulta la sezione Archiviazione e routing dei log di controllo di questa pagina.
Audit log degli eventi di sistema
Gli audit log degli eventi di sistema contengono voci di log per azioni Google Cloud che modificano la configurazione delle risorse. Gli audit log degli eventi di sistema vengono generati dai sistemi Google Cloud e non sono basati su azioni dirette dell'utente.
Gli audit log degli eventi di sistema vengono sempre scritti; non puoi configurarli, escluderli o disabilitarli.
Per un elenco dei servizi che scrivono gli audit log degli eventi di sistema e informazioni dettagliate sulle attività che generano questi log, consulta Servizi Google Cloud con audit log.
Audit log con criteri negati
I log di controllo Rifiuto ai sensi delle norme vengono registrati quando un servizio Google Cloud nega l'accesso a un utente o a un account di servizio a causa di una violazione delle norme di sicurezza.
Gli audit log sugli accessi negati in base ai criteri vengono generati per impostazione predefinita e al tuo progetto Google Cloud viene addebitato lo spazio di archiviazione per i log. Non puoi disattivare gli audit log di rifiuto dei criteri, ma puoi utilizzare i filtri di esclusione per impedire che vengano archiviati in Cloud Logging.
Per un elenco dei servizi che scrivono audit log sugli accessi negati in base ai criteri e informazioni dettagliate sulle attività che generano questi log, consulta Servizi Google Cloud con audit log.
Struttura della voce voce di log di controllo
Ogni voce di log di controllo in Cloud Logging è un oggetto di tipo
LogEntry
. Ciò che distingue una voce di log di controllo dalle altre voci del log è il campo protoPayload
, che contiene un oggetto AuditLog
che memorizza i dati dell'audit logging.
Per informazioni su come leggere e interpretare le voci dei log di controllo e per un esempio di voce di log di controllo, consulta Informazioni sui log di controllo.
Nome log
I nomi dei log di Cloud Audit Logs includono:
Identificatori delle risorse che indicano il progetto Google Cloud o un'altra entità Google Cloud proprietaria degli audit log.
La stringa
cloudaudit.googleapis.com
.Una stringa che indica se il log contiene dati di audit logging per attività di amministrazione, accesso ai dati, accesso negato in base ai criteri o evento di sistema.
Di seguito sono riportati i nomi dei log di controllo, incluse le variabili per gli identificatori delle risorse:
projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fdata_access projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fpolicy folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Factivity folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fdata_access folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fsystem_event folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fpolicy billingAccounts/BILLING_ACCOUNT_ID/logs/cloudaudit.googleapis.com%2Factivity billingAccounts/BILLING_ACCOUNT_ID/logs/cloudaudit.googleapis.com%2Fdata_access billingAccounts/BILLING_ACCOUNT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event billingAccounts/BILLING_ACCOUNT_ID/logs/cloudaudit.googleapis.com%2Fpolicy organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Factivity organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fsystem_event organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fpolicy
Identità chiamante nei log di controllo
Gli audit log registrano l'identità che ha eseguito le operazioni registrate sulla risorsa Google Cloud. L'identità del chiamante è contenuta nel
campo AuthenticationInfo
degli oggetti AuditLog
.
L'audit logging non oscura l'indirizzo email principale dell'utente che ha eseguito l'accesso andato a buon fine o per qualsiasi operazione di scrittura.
Per le operazioni di sola lettura che non riescono con un errore di "autorizzazione negata", la registrazione di controllo potrebbe oscurare l'indirizzo email principale dell'utente chiamante, a meno che l'utente chiamante non sia un account di servizio.
Oltre alle condizioni elencate sopra, a determinati servizi Google Cloud si applica quanto segue:
- API App Engine legacy: le identità non vengono raccolte.
BigQuery: le identità e gli indirizzi IP dell'autore della chiamata, nonché alcuni nomi di risorse, vengono oscurati dai log di controllo, a meno che non siano soddisfatte determinate condizioni.
Cloud Storage: quando i log di utilizzo di Cloud Storage sono abilitati, Cloud Storage scrive i dati di utilizzo nel bucket Cloud Storage, che genera audit log di accesso ai dati per il bucket. L'identità dell'utente chiamante dell'audit log di accesso ai dati generato è oscurata.
- Firestore: se è stato utilizzato un token web JSON (JWT) per l'autenticazione di terze parti, il campo
thirdPartyPrincipal
include l'intestazione e il payload del token. Ad esempio, i log di controllo per le richieste autenticate con Firebase Authentication includono il token di autenticazione della richiesta.
Controlli di servizio VPC: per gli audit log relativi ai criteri negati, viene applicata la seguente oscuramento:
Parti degli indirizzi email dell'autore della chiamata potrebbero essere oscurate e sostituite da tre punti
...
.Alcuni indirizzi email degli utenti che chiamano appartenenti al dominio
google.com
sono oscurati e sostituiti dagoogle-internal
.
- Norme dell'organizzazione:
parti degli indirizzi email del chiamante potrebbero essere oscurate e sostituite da
tre punti
...
.
Indirizzo IP dell'utente che ha effettuato l'accesso nei log di controllo
L'indirizzo IP dell'utente che chiama è memorizzato nel campo RequestMetadata.callerIp
dell'oggetto AuditLog
:
- Per un chiamante da internet, l'indirizzo è un indirizzo IPv4 o IPv6 pubblico.
- Per le chiamate effettuate dall'interno della rete di produzione interna da un servizio Google Cloud a un altro, il valore
callerIp
viene oscurato in "privato". - Per un chiamante da una VM Compute Engine con un indirizzo IP esterno,
callerIp
è l'indirizzo esterno della VM. - Per un chiamante da una VM Compute Engine senza un indirizzo IP esterno, se la VM si trova nella stessa organizzazione o nello stesso progetto della risorsa a cui è stato eseguito l'accesso,
callerIp
è l'indirizzo IPv4 interno della VM. In caso contrario,callerIp
viene oscurato in "gce-internal-ip". Per maggiori informazioni, consulta Panoramica della rete VPC.
Visualizzazione degli audit log
Puoi eseguire query su tutti i log di controllo o su log specifici in base al nome. Il nome dell'audit log include l'identificatore della risorsa del progetto, della cartella, dell'account di fatturazione o dell'organizzazione Google Cloud per cui vuoi visualizzare le informazioni di audit logging.
Le query possono specificare campi LogEntry
indicizzati.
Per ulteriori informazioni sull'esecuzione di query sui log, consulta
Creare query in Esplora log
Esplora log ti consente di visualizzare e filtrare le singole voci di log. Se vuoi utilizzare SQL per analizzare gruppi di voci di log, utilizza la pagina Analisi dei log. Per ulteriori informazioni, vedi:
- Esegui query e visualizza i log in Analisi dei log.
- Query di esempio per gli approfondimenti sulla sicurezza.
- Grafica i risultati della query.
La maggior parte degli audit log può essere visualizzata in Cloud Logging utilizzando la console Google Cloud, Google Cloud CLI o l'API Logging. Tuttavia, per gli audit log relativi alla fatturazione, puoi utilizzare solo Google Cloud CLI o l'API Logging.
Console
Nella console Google Cloud, puoi utilizzare Esplora log per recuperare le voci degli audit log per il progetto, la cartella o l'organizzazione Google Cloud:
-
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 un progetto, una cartella o un'organizzazione Google Cloud esistente.
Per visualizzare tutti i log di controllo, inserisci una delle seguenti query nel campo dell'editor di query e poi fai clic su Esegui query:
logName:"cloudaudit.googleapis.com"
protoPayload."@type"="type.googleapis.com/google.cloud.audit.AuditLog"
Per visualizzare gli audit log per una risorsa e un tipo di audit log specifici, nel riquadro Query Builder:
In Tipo di risorsa, seleziona la risorsa Google Cloud di cui vuoi visualizzare gli audit log.
In Nome log, seleziona il tipo di log di controllo da visualizzare:
- Per gli audit log delle attività di amministrazione, seleziona activity.
- Per gli audit log di accesso ai dati, seleziona data_access.
- Per gli audit log degli eventi di sistema, seleziona system_event.
- Per gli audit log di accesso negato in base ai criteri, seleziona policy.
Fai clic su Esegui query.
Se non visualizzi queste opzioni, vuol dire che non sono disponibili audit log di questo tipo nel progetto, nella cartella o nell'organizzazione Google Cloud.
Se riscontri problemi quando provi a visualizzare i log in Esplora log, consulta le informazioni sulla risoluzione dei problemi.
Per ulteriori informazioni sulle query utilizzando Esplora log, consulta Creare query in Esplora log.
gcloud
Google Cloud CLI fornisce un'interfaccia a riga di comando per l'API Logging. Fornisci un identificatore della risorsa valido in ciascuno dei nomi del log. Ad esempio, se la query include un PROJECT_ID, l'identificatore del progetto fornito deve fare riferimento al progetto Google Cloud attualmente selezionato.
Per leggere le voci dei log di controllo a livello di progetto Google Cloud, esegui il seguente comando:
gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" \ --project=PROJECT_ID
Per leggere le voci dei log di controllo a livello di cartella, esegui il seguente comando:
gcloud logging read "logName : folders/FOLDER_ID/logs/cloudaudit.googleapis.com" \ --folder=FOLDER_ID
Per leggere le voci degli audit log a livello di organizzazione, esegui il seguente comando:
gcloud logging read "logName : organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com" \ --organization=ORGANIZATION_ID
Per leggere le voci del log di controllo a livello di account di fatturazione Cloud, esegui il seguente comando:
gcloud logging read "logName : billingAccounts/BILLING_ACCOUNT_ID/logs/cloudaudit.googleapis.com" \ --billing-account=BILLING_ACCOUNT_ID
Aggiungi il flag --freshness
al comando per leggere i log risalenti a più di un giorno prima.
Per ulteriori informazioni sull'utilizzo dellgcloud CLI, consulta
gcloud logging read
.
REST
Quando crei le query, fornisci un identificatore di risorse valido in ciascuno delle denominazioni dei log. Ad esempio, se la query include un PROJECT_ID, l'identificatore del progetto fornito deve fare riferimento al progetto Google Cloud selezionato al momento.
Ad esempio, per utilizzare l'API Logging per visualizzare le voci di audit log a livello di progetto:
Vai alla sezione Prova questa API nella documentazione del metodo
entries.list
.Inserisci quanto segue nella sezione Corpo della richiesta del modulo Prova questa API. Se fai clic su questo modulo precompilato, il corpo della richiesta viene compilato automaticamente, ma devi fornire un valore PROJECT_ID valido in ciascuno dei nomi dei log.
{ "resourceNames": [ "projects/PROJECT_ID" ], "pageSize": 5, "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" }
Fai clic su Execute (Esegui).
Archiviazione e inoltro dei log di controllo
Cloud Logging usa i bucket di log come container in cui vengono archiviati e organizzati i dati dei log. Per ogni account di fatturazione, progetto, cartella e organizzazione Google Cloud, Logging crea automaticamente due bucket di log, _Required
e _Default
, e sink con nomi corrispondenti.
I bucket _Required
di Cloud Logging archiviano gli audit log delle attività di amministrazione e gli audit log degli eventi di sistema. Non puoi impedire la memorizzazione degli audit log relativi all'attività di amministrazione o agli eventi di sistema. Inoltre, non puoi configurare il sink che instrada
le voci di log ai bucket _Required
.
Gli audit log delle attività di amministrazione e gli audit log degli eventi di sistema vengono sempre archiviati nel
_Required
bucket del progetto in cui sono stati generati.
Se inoltri gli audit log Attività di amministrazione e gli audit log Eventi di sistema a un progetto diverso, questi log non passano attraverso l'elemento di destinazione _Default
o _Required
del progetto di destinazione. Pertanto, questi log non vengono archiviati nel bucket di log _Default
o nel bucket di log _Required
del progetto di destinazione. Per archiviare questi log, crea un sink di log nel progetto di destinazione.
Per ulteriori informazioni, consulta Indirizzare i log alle destinazioni supportate.
Per impostazione predefinita, i bucket _Default
memorizzano tutti gli audit log di accesso ai dati abilitati, nonché gli audit log sugli accessi negati in base ai criteri. Per impedire che gli audit log di accesso ai dati vengano archiviati nei bucket _Default
, puoi disattivarli. Per impedire la memorizzazione di audit log con stato Rifiutato dai criteri nei bucket _Default
, puoi escluderli modificando i filtri dei relativi sink.
Puoi anche instradare le voci di log di controllo a bucket Cloud Logging definiti dall'utente a livello di progetto Google Cloud o a destinazioni supportate al di fuori di Logging utilizzando i sink. Per istruzioni sul routing dei log, consulta Eseguire il routing dei log verso destinazioni supportate.
Quando configuri i filtri dei sink di log, devi specificare i tipi di log di controllo che vuoi instradare. Per esempi di filtri, consulta Query di logging per la sicurezza.
Se vuoi inoltrare le voci di log di controllo per un'organizzazione, una cartella o un account di fatturazione Google Cloud, consulta Raccogliere e inoltrare i log a livello di organizzazione alle destinazioni supportate.
Conservazione degli audit log
Per informazioni dettagliate sul periodo di conservazione delle voci di log da parte di Logging, consulta le informazioni sulla conservazione in Quote e limiti: periodi di conservazione dei log.
Controllo degli accessi
Le autorizzazioni e i ruoli IAM determinano la tua capacità di accedere ai dati degli audit log nell'API Logging, in Esplora log e nell'interfaccia a riga di comando Google Cloud.
Per informazioni dettagliate sui ruoli e sulle autorizzazioni IAM di cui potresti avere bisogno, consulta Controllo dell'accesso con IAM.
Quote e limiti
Per informazioni dettagliate sui limiti di utilizzo dei log, incluse le dimensioni massime dei log di controllo, consulta Quote e limiti.
Prezzi
Cloud Logging non addebita alcun costo per il routing dei log a una destinazione supportata. Tuttavia, la destinazione potrebbe applicare dei costi.
Ad eccezione del bucket di log _Required
,
Cloud Logging addebita lo streaming dei log nei bucket di log e
per l'archiviazione per un periodo superiore al periodo di conservazione predefinito del bucket di log.
Cloud Logging non addebita alcun costo per la copia dei log, per la definizione degli ambiti dei log o per le query inviate tramite le pagine Esplora log o Analisi dei log.
Per ulteriori informazioni, consulta i seguenti documenti:
- Riepilogo dei prezzi di Cloud Logging
Costi di destinazione:
- I costi di generazione dei log di flusso VPC si applicano quando invii e poi escludi i log di flusso Virtual Private Cloud da Cloud Logging.
Passaggi successivi
- Scopri come leggere e comprendere i log di controllo.
- Scopri come abilitare gli audit log di accesso ai dati.
- Consulta le best practice per Cloud Audit Logs.
- Scopri di più su Access Transparency, che fornisce i log delle azioni intraprese dal personale di Google Cloud quando accede ai tuoi contenuti di Google Cloud.