Questo documento descrive gli audit log creati da App Engine come parte degli audit log di Cloud.
Panoramica
I servizi Google Cloud scrivono gli audit log per aiutarti a rispondere alle domande su "Chi ha fatto cosa, dove e quando" all'interno delle tue risorse Google Cloud.
I progetti Google Cloud contengono solo gli audit log per le risorse che si trovano direttamente all'interno del progetto Cloud. Altre risorse di Google Cloud, come cartelle, organizzazioni e account di fatturazione, contengono i log di controllo per l'entità stessa.
Per una panoramica generale degli audit log di Cloud, consulta la panoramica degli audit log di Cloud. Per una comprensione più approfondita del formato degli audit log, consulta Informazioni sui log di controllo.
Log di controllo disponibili
Per App Engine sono disponibili i seguenti tipi di audit log:
-
Audit log delle attività di amministrazione
Include le operazioni di scrittura/scrittura dell'amministratore che scrivono metadati o informazioni sulla configurazione.
Non puoi disattivare gli audit log Attività di amministrazione.
Per una descrizione più completa dei tipi di audit log, vedi Tipi di audit log.
Operazioni con audit
Di seguito è riepilogato le operazioni API corrispondenti a ogni tipo di audit log in App Engine:
Categoria di audit log | Operazioni App Engine |
---|---|
Audit log delle attività di amministrazione |
apps.create apps.patch apps.repair apps.authorizedCertificates.create apps.authorizedCertificates.delete apps.authorizedCertificates.patch apps.domainMappings.create apps.domainMappings.delete apps.domainMappings.patch apps.firewall.ingressRules.batchUpdate apps.firewall.ingressRules.create apps.firewall.ingressRules.delete apps.firewall.ingressRules.patch apps.services.delete apps.services.patch apps.services.versions.create apps.services.versions.delete apps.services.versions.patch apps.services.versions.instances.debug apps.services.versions.instances.delete |
Formato degli audit log
Le voci dei log di controllo includono i seguenti oggetti:
La voce di log stessa, che è un oggetto di tipo
LogEntry
. Di seguito vengono riportati alcuni campi utili:- L'elemento
logName
contiene l'ID risorsa e il tipo di log di controllo. resource
contiene il target dell'operazione sottoposta ad audit.timeStamp
contiene l'ora dell'operazione controllata.- L'elemento
protoPayload
contiene le informazioni controllate.
- L'elemento
Dati di audit logging, che sono un oggetto
AuditLog
contenuto nel campoprotoPayload
della voce di log.Informazioni di audit facoltative e specifiche del servizio, che sono un oggetto specifico del servizio. Per le integrazioni precedenti, questo oggetto è conservato nel campo
serviceData
dell'oggettoAuditLog
; le integrazioni successive utilizzano il campometadata
.
Per informazioni su altri campi in questi oggetti e su come interpretarli, consulta la pagina Informazioni sui log di controllo.
Nome log
I nomi degli audit log di Cloud includono gli identificatori delle risorse che indicano il progetto Cloud o altre entità Google Cloud proprietarie degli audit log e se il log contiene dati di audit attività, accesso ai dati, criteri negati o audit log degli eventi di sistema.
Di seguito sono riportati i nomi dei log di controllo, incluse le variabili per gli identificatori della risorsa:
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
Nome servizio
Gli audit log di App Engine utilizzano il nome del servizio
appengine.googleapis.com
.
Per un elenco di tutti i nomi dei servizi API di Cloud Logging e il corrispondente tipo di risorsa monitorata, consulta Mappatura dei servizi alle risorse.
Tipi di risorse
Gli audit log di App Engine utilizzano il tipo di risorsa
gae_app
per tutti gli audit log.
Per un elenco di tutti i tipi di risorse monitorate e le informazioni descrittive di Cloud Logging, consulta Tipi di risorse monitorate.
Abilitazione degli audit log
Gli audit log Attività di amministrazione sono sempre abilitati e non possono essere disattivati.
Autorizzazioni e ruoli
Le autorizzazioni e i ruoli IAM determinano la tua capacità di accedere ai dati degli audit log nelle risorse Google Cloud.
Per determinare quali autorizzazioni e ruoli di Logging specifici si applicano al tuo caso d'uso, considera quanto segue:
Il ruolo Visualizzatore log (
roles/logging.viewer
) consente l'accesso in sola lettura agli audit log Attività di amministrazione, Negato e Eventi di sistema. Se hai solo questo ruolo, non puoi visualizzare gli audit log di accesso ai dati nei bucket_Required
e_Default
.Il ruolo Visualizzatore log privati
(roles/logging.privateLogViewer
) include le autorizzazioni contenute inroles/logging.viewer
, oltre alla possibilità di leggere gli audit log di accesso ai dati nei bucket_Required
e_Default
.Tieni presente che se questi log privati sono archiviati in bucket definiti dall'utente, qualsiasi utente autorizzato a leggere i log in tali bucket può leggere i log privati. Per ulteriori informazioni sui bucket di log, consulta la panoramica di routing e archiviazione.
Per ulteriori informazioni sulle autorizzazioni IAM e i ruoli applicabili ai dati degli audit log, consulta Controllo degli accessi con IAM.
Visualizza i log
Per eseguire query sugli audit log, devi conoscere il nome del log di controllo, che include l'identificatore di risorsa del progetto, della cartella, dell'account di fatturazione o dell'organizzazione Cloud per cui vuoi visualizzare le informazioni degli audit log. Nella
query puoi specificare ulteriormente altri campi LogEntry
indicizzati,
come resource.type
. Per ulteriori informazioni sulle query, consulta
Creazione di query in Esplora log.
Console
In Cloud Console, puoi utilizzare Esplora log per recuperare le voci del log di controllo per il progetto, la cartella o l'organizzazione Cloud.
In Cloud Console, vai alla pagina Logging> Esplora log.
Seleziona un progetto, una cartella o un'organizzazione Cloud esistente.
Nel riquadro Query Builder, procedi nel seguente modo:
In Tipo di risorsa, seleziona la risorsa Google Cloud di cui vuoi visualizzare i log di controllo.
In Nome log, seleziona il tipo di log di controllo da visualizzare:
- Per i log di controllo dell'attività di amministrazione, seleziona attività.
- Per gli audit log di accesso ai dati, seleziona data_access.
- Per i log di controllo degli eventi di sistema, seleziona system_event.
- Per i log di controllo di negazione dei criteri, seleziona norme.
Se non vedi queste opzioni, significa che non sono disponibili log di controllo di quel tipo disponibili nel progetto, nella cartella o nell'organizzazione Cloud.
Se si verificano problemi durante il tentativo di visualizzazione dei log in Esplora log, consulta le informazioni per la risoluzione dei problemi.
Per ulteriori informazioni sull'esecuzione di query utilizzando Esplora log, consulta Creazione di query in Esplora log.
gcloud
L'interfaccia a riga di comando di Google Cloud fornisce un'interfaccia a riga di comando all'API Logging. Fornisci un identificatore della risorsa valido in ciascuno dei nomi dei log. Ad esempio, se la tua query include un PROJECT_ID, l'identificatore di progetto che fornisci deve fare riferimento al progetto Cloud attualmente selezionato.
Per leggere le voci degli audit log a livello di progetto Cloud, esegui il comando seguente:
gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" \ --project=PROJECT_ID
Per leggere le voci del log di controllo 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 del log di controllo 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 del log di controllo 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 dell'interfaccia a riga di comando gcloud, vedi
gcloud logging read
.
API
Quando crei le query, fornisci un identificatore di risorsa valido in ciascuno dei nomi dei log. Ad esempio, se la tua query include un PROJECT_ID, l'identificatore di progetto che fornisci deve fare riferimento al progetto Cloud attualmente selezionato.
Ad esempio, per utilizzare l'API Logging per visualizzare le voci del log di controllo a livello di progetto, procedi come segue:
Vai alla sezione Prova questa API nella documentazione del metodo
entries.list
.Inserisci quanto segue nella parte del corpo della richiesta del modulo Prova questa API. Se fai clic su questo modulo precompilato, verrà compilato automaticamente il corpo della richiesta, ma dovrai fornire un 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).
Audit log delle route
Puoi indirizzare gli audit log alle destinazioni supportate nello stesso modo in cui puoi instradare altri tipi di log. Ecco alcuni motivi per cui potresti voler indirizzare i log di controllo:
Per conservare gli audit log per un periodo di tempo più lungo o utilizzare funzionalità di ricerca più potenti, puoi eseguire il routing delle copie dei log di controllo a Cloud Storage, BigQuery o Pub/Sub. Con Pub/Sub puoi instradare ad altre applicazioni, altri repository e a terze parti.
Per gestire gli audit log in un'intera organizzazione, puoi creare sink aggregati che possono indirizzare i log da uno o tutti i progetti Cloud dell'organizzazione.
Per istruzioni sui log di routing, consulta Configurare e gestire sink.
Prezzi
Per informazioni sui prezzi di Cloud Logging, consulta i prezzi della suite operativa di Google Cloud: Cloud Logging.