Panoramica di Cloud Audit Logs

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 consentono di rispondere a domande "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'abilitazione degli audit log consente alle entità di sicurezza, auditing e conformità di monitorare i dati e i sistemi di Google Cloud per individuare possibili vulnerabilità o utilizzare un uso improprio dei dati esterni.

Servizi Google che producono log di controllo

Per un elenco dei servizi Google Cloud che forniscono audit log, consulta Servizi Google con audit log. Tutti i servizi Google Cloud riceveranno audit log.

Per una panoramica dei log di controllo di Google Workspace, consulta Log di controllo per Google Workspace.

Tipi di audit log

Cloud Audit Logs fornisce i seguenti audit log per ogni progetto, cartella e organizzazione Google Cloud:

Audit log delle attività di amministrazione

Gli audit log delle 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 delle attività di amministrazione vengono sempre scritti; non puoi configurarli, escluderli o disabilitarli. Anche se disabiliti l'API Cloud Logging, gli audit log delle attività di amministrazione vengono comunque generati.

Per un elenco dei servizi che scrivono audit log 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 gestite dall'utente 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 audit log. Ciò contribuisce a proteggere le identità e le informazioni degli utenti finali.

Gli audit log di accesso ai dati, ad eccezione degli audit log di accesso ai dati di BigQuery, sono disabilitati per impostazione predefinita in quanto gli audit log possono essere molto grandi. Se vuoi che gli audit log di 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 per l'utilizzo aggiuntivo dei log. Per istruzioni su come abilitare e configurare gli audit log di accesso ai dati, consulta Abilitare gli audit log di accesso ai dati.

Per un elenco dei servizi che scrivono audit log di accesso ai dati e informazioni dettagliate sulle attività che generano questi log, consulta Servizi Google Cloud con audit log.

Gli audit log di accesso ai dati sono archiviati nel bucket di log di _Default, a meno che tu non li abbia instradati altrove. Per ulteriori informazioni, consulta la sezione Archiviazione e routing degli audit log di questa pagina.

Audit log degli eventi di sistema

Gli audit log degli eventi di sistema contengono voci di log per le azioni di Google Cloud che modificano la configurazione delle risorse. Gli audit log degli eventi di sistema vengono generati dai sistemi Google e non sono basati su un'azione diretta 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 audit log degli eventi di sistema e informazioni dettagliate sulle attività che generano questi log, consulta Servizi Google Cloud con audit log.

Audit log dei criteri negati

Gli audit log relativi ai criteri negati vengono registrati quando un servizio Google Cloud nega l'accesso a un utente o a un account di servizio a causa di una violazione dei criteri di sicurezza.

Gli audit log relativi ai criteri negati vengono generati per impostazione predefinita e al progetto Google Cloud viene addebitato l'importo relativo all'archiviazione dei log. Non puoi disabilitare gli audit log relativi ai criteri negati, ma puoi utilizzare i filtri di esclusione per impedire che gli audit log negati ai criteri vengano archiviati in Cloud Logging.

Per un elenco dei servizi che scrivono audit log negati ai criteri e informazioni dettagliate sulle attività che generano questi log, consulta Servizi Google Cloud con audit log.

Struttura delle voci di audit log

Ogni voce di audit log in Cloud Logging è un oggetto di tipo LogEntry. Ciò che distingue una voce di audit log dalle altre voci di log è il campo protoPayload, che contiene un oggetto AuditLog in cui sono archiviati i dati di audit logging.

Per capire come leggere e interpretare le voci degli audit log, e per un esempio di una voce di audit log, consulta Informazioni sugli audit log.

Nome log

I nomi dei log di Cloud Audit Logs includono:

  • Identificatori di risorse che indicano il progetto Google Cloud o 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 relativi ad attività di amministrazione, accesso ai dati, criterio negato o eventi di sistema.

Di seguito sono riportati i nomi degli audit log, 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 negli audit log

Gli audit log registrano l'identità che ha eseguito le operazioni registrate sulla risorsa Google Cloud. L'identità del chiamante è memorizzata nel campo AuthenticationInfo degli oggetti AuditLog.

L'audit logging non oscura l'indirizzo email principale del chiamante per gli accessi eseguiti correttamente o per le operazioni di scrittura.

Per le operazioni di sola lettura che non hanno esito positivo con un errore "Autorizzazione negata", l'audit logging potrebbe oscurare l'indirizzo email principale del chiamante, a meno che il chiamante non sia un account di servizio.

In aggiunta 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à dei chiamanti e gli indirizzi IP, nonché alcuni nomi di risorse, vengono oscurati dagli audit log, a meno che non vengano soddisfatte determinate condizioni.

  • Cloud Storage: se i log di utilizzo di Cloud Storage sono abilitati, Cloud Storage scrive i dati sull'utilizzo nel bucket Cloud Storage, che genera audit log di accesso ai dati per il bucket. L'identità del chiamante dell'audit log di accesso ai dati generato è oscurata.

  • Firestore: se è stato utilizzato un token JWT (JSON Web Token) per l'autenticazione di terze parti, il campo thirdPartyPrincipal include l'intestazione e il payload del token. Ad esempio, gli audit log per le richieste autenticate con Firebase Authentication includono il token di autorizzazione della richiesta.

  • Controlli di servizio VPC: per gli audit log relativi ai criteri negati, si verifica il seguente oscuramento:

    • Parti degli indirizzi email dei chiamanti potrebbero essere oscurate e sostituite da tre punti ....

    • Alcuni indirizzi email dei chiamanti appartenenti al dominio google.com vengono oscurati e sostituiti da google-internal.

  • Criterio dell'organizzazione: parti degli indirizzi email dei chiamanti potrebbero essere oscurati e sostituiti con tre punti ....

Indirizzo IP del chiamante negli audit log

L'indirizzo IP del chiamante si trova nel campo RequestMetadata.caller_ip 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 di Google da un servizio Google Cloud a un altro, call_ip è oscurato come "privato".
  • Per un chiamante da una VM Compute Engine con un indirizzo IP esterno, caller_ip è l'indirizzo esterno della VM.
  • Per un chiamante da una VM Compute Engine senza indirizzo IP esterno, se la VM si trova nella stessa organizzazione o nello stesso progetto della risorsa a cui è stato eseguito l'accesso, caller_ip è l'indirizzo IPv4 interno della VM. In caso contrario, il valore di callback_ip sarà oscurato in "gce-internal-ip". Per ulteriori informazioni, consulta la panoramica della rete VPC.

Visualizzazione degli audit log

Puoi eseguire query per tutti gli audit log o in base al nome degli audit log. Il nome dell'audit log include l'identificatore della risorsa del progetto, della cartella, dell'account di fatturazione o dell'organizzazione Google Cloud di cui vuoi visualizzare le informazioni di audit logging. Le query possono specificare i campi indicizzati LogEntry e, se utilizzi la pagina Analisi dei log, che supporta le query SQL, puoi visualizzare i risultati della query sotto forma di grafico.

Per ulteriori informazioni sull'esecuzione di query sui log, consulta le seguenti pagine:

Puoi visualizzare gli audit log in Cloud Logging utilizzando la console Google Cloud, 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:

  1. Nel pannello di navigazione della console Google Cloud, seleziona Logging, quindi Esplora log:

    Vai a Esplora log

  2. Seleziona un progetto, una cartella o un'organizzazione Google Cloud esistente.

  3. Per visualizzare tutti gli audit log, inserisci una delle seguenti query nel campo query-editor, quindi fai clic su Esegui query:

    logName:"cloudaudit.googleapis.com"
    
    protoPayload."@type"="type.googleapis.com/google.cloud.audit.AuditLog"
    
  4. Per visualizzare gli audit log per una risorsa specifica e un tipo di audit log, nel riquadro Query Builder, 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 log di controllo che vuoi visualizzare:

      • Per gli audit log di controllo delle attività di amministrazione, seleziona attività.
      • Per gli audit log di accesso ai dati, seleziona data_access.
      • Per gli audit log degli eventi di sistema, seleziona system_event.
      • Per i log di controllo dei criteri negati, seleziona criterio.
    • Fai clic su Esegui query.

    Se non vedi queste opzioni, significa che non sono disponibili audit log di quel tipo nel progetto, nella cartella o nell'organizzazione di Google Cloud.

    Se riscontri problemi durante il tentativo di visualizzare i log in Esplora log, consulta le informazioni sulla risoluzione dei problemi.

    Per maggiori informazioni sull'esecuzione di query utilizzando Esplora log, consulta Creare query in Esplora log. Per informazioni sul riepilogo delle voci di log in Esplora log utilizzando Gemini, consulta Riepilogare le voci di log con l'assistenza Gemini.

gcloud

Google Cloud CLI fornisce un'interfaccia a riga di comando per l'API Logging. Fornisci un identificatore di risorsa valido in ognuno dei nomi dei log. Ad esempio, se la query include un valore PROJECT_ID, l'identificatore del progetto fornito deve fare riferimento al progetto Google Cloud attualmente selezionato.

Per leggere le voci dell'audit log a livello di progetto Google Cloud, esegui questo comando:

gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" \
    --project=PROJECT_ID

Per leggere le voci dell'audit log a livello di cartella, esegui il comando seguente:

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 questo comando:

gcloud logging read "logName : organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com" \
    --organization=ORGANIZATION_ID

Per leggere le voci dell'audit log a livello di account di fatturazione Cloud, esegui questo 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 che risalgono a più di un giorno fa.

Per ulteriori informazioni sull'utilizzo di gcloud CLI, consulta gcloud logging read.

API

Quando crei le query, fornisci un identificatore di risorsa valido in ciascuno dei nomi dei log. Ad esempio, se la query include un valore PROJECT_ID, l'identificatore del progetto fornito deve fare riferimento al progetto Google Cloud attualmente selezionato.

Ad esempio, per utilizzare l'API Logging per visualizzare le voci degli audit log a livello di progetto:

  1. Vai alla sezione Prova questa API nella documentazione per il metodo entries.list.

  2. Inserisci quanto segue nella parte 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 ogni nome di log.

    {
      "resourceNames": [
        "projects/PROJECT_ID"
      ],
      "pageSize": 5,
      "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com"
    }
    
  3. Fai clic su Execute (Esegui).

Archiviazione e routing degli audit log

Cloud Logging utilizza i bucket di log come container per l'archiviazione e l'organizzazione dei dati dei log. Per ogni progetto, cartella e organizzazione Google Cloud, Logging crea automaticamente due bucket di log, _Required e _Default, e i sinks denominati 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 configurare _Required bucket o dati di log al suo interno.

Gli audit log delle attività di amministrazione e gli audit log degli eventi di sistema vengono sempre archiviati nel bucket _Required del progetto in cui sono stati generati i log.

Se instrada gli audit log delle attività di amministrazione e gli audit log degli eventi di sistema a un progetto diverso, questi log non passano attraverso il sink _Default o _Required del progetto di destinazione. Di conseguenza, 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 maggiori informazioni, vedi Eseguire il routing dei log alle destinazioni supportate.

I bucket _Default, per impostazione predefinita, archiviano tutti gli audit log di accesso ai dati abilitati e gli audit log relativi ai criteri negati. Per impedire l'archiviazione degli audit log di accesso ai dati nei bucket _Default, puoi disabilitarli. Per impedire l'archiviazione nei bucket _Default degli audit log relativi ai criteri negati, puoi escluderli modificando i filtri dei sink.

Puoi anche instradare le voci degli audit log ai 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 Instradare i log alle destinazioni supportate.

Quando configuri i filtri dei sink di log, devi specificare i tipi di audit log che vuoi indirizzare. Per gli esempi di filtro, consulta Query di logging della sicurezza.

Se vuoi instradare le voci di log di controllo per un'organizzazione, una cartella o un account di fatturazione Google Cloud, consulta Fascinettere e instradare i log a livello di organizzazione verso destinazioni supportate.

Conservazione degli audit log

Per maggiori dettagli sul periodo di tempo in cui le voci di log vengono conservate da Logging, consulta le informazioni sulla conservazione in Quote e limiti: periodi di conservazione dei log.

Controllo dell'accesso

Le autorizzazioni e i ruoli IAM determinano la tua possibilità di accedere ai dati degli audit log nell'API Logging, in Esplora log e in Google Cloud CLI.

Per informazioni dettagliate sulle autorizzazioni e sui ruoli IAM di cui potresti aver bisogno, consulta Controllo dell'accesso con IAM .

Quote e limiti

Per maggiori dettagli sul logging dei limiti di utilizzo, incluse le dimensioni massime degli audit log, consulta Quote e limiti.

Prezzi

Cloud Logging non prevede addebiti per instradare i log a una destinazione supportata, ma per la destinazione potrebbero essere applicati dei costi. Ad eccezione del bucket di log _Required, Cloud Logging addebita un costo per trasmettere i log nei bucket di log e per un'archiviazione più lunga rispetto al periodo di conservazione predefinito del bucket di log.

Cloud Logging non addebita costi per la copia dei log o per le query eseguite tramite la pagina Esplora log o la pagina Analisi dei log.

Per ulteriori informazioni, consulta i seguenti documenti:

Passaggi successivi