In questa pagina vengono descritti gli audit log creati da Cloud Search nell'ambito di Cloud Audit Logs.
Panoramica
I servizi Google Cloud scrivono gli audit log per aiutarti a rispondere alle domande "Chi ha fatto cosa, dove e quando" all'interno delle tue risorse. I tuoi progetti Cloud contengono solo gli audit log per le risorse che si trovano direttamente al loro interno. Altre entità, come cartelle, organizzazioni e account Cloud Billing, contengono gli audit log specifici.
Per una panoramica generale di Cloud Audit Logs, vedi Cloud Audit Logs. Per una comprensione più approfondita di Cloud Audit Logs, consulta Comprendere i log di controllo.
Cloud Audit Logs fornisce i seguenti audit log per ogni progetto, cartella e organizzazione Cloud:
- Audit log delle attività di amministrazione contenenti voci corrispondenti ai metodi che eseguono operazioni di scrittura amministrativa. I metodi corrispondenti alle operazioni di scrittura dell'amministratore in Attività di amministrazione sono trattati in una sezione Operazioni sottoposte ad audit di prossima pubblicazione.
- Audit log di accesso ai dati contenenti voci corrispondenti ai metodi che eseguono operazioni di lettura amministratore, scrittura dati e lettura dati. I metodi corrispondenti alle operazioni di accesso ai dati: lettura amministrativa, scrittura dati e lettura dati sono trattati in una sezione Operazioni sottoposte ad audit di prossima pubblicazione.
- Audit log degli eventi di sistema
- Audit log negati da criteri
Cloud Search scrive audit log per l'attività di amministrazione, che registrano le operazioni che modificano la configurazione o i metadati di una risorsa. Non puoi disabilitare gli audit log delle attività di amministrazione.
Solo se abilitati esplicitamente, Cloud Search scrive gli audit log di accesso 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.
Cloud Search non scrive audit log degli eventi di sistema.
Cloud Search non scrive audit log sugli accessi negati in base ai criteri.
Operazioni con audit
Di seguito è riportato un riepilogo delle operazioni API corrispondenti a ogni tipo di audit log in Cloud Search:
Categoria di audit log | Operazioni di Cloud Search |
---|---|
Attività di amministrazione: scrittura amministratore | indexing.datasources.updateSchema indexing.datasources.deleteSchema settings.datasources.create settings.datasources.delete settings.datasources.update settings.searchapplications.create settings.searchapplications.delete settings.searchapplications.reset settings.searchapplications.update settings.updateCustomer cloudsearch.IdentitySourceService.create cloudsearch.IdentitySourceService.update cloudsearch.IdentitySourceService.delete |
Accesso ai dati: lettura amministratore | indexing.datasources.getSchema settings.datasources.get settings.datasources.list settings.searchapplications.get settings.searchapplications.list settings.getCustomer cloudsearch.IdentitySourceService.get cloudsearch.IdentitySourceService.list |
Accesso ai dati: scrittura dei dati | indexing.datasources.items.delete indexing.datasources.items.deleteQueueItems indexing.datasources.items.index indexing.datasources.items.poll indexing.datasources.items.push indexing.datasources.items.unreserve indexing.datasources.items.upload media.upload |
Accesso ai dati: lettura dati | indexing.datasources.items.get indexing.datasources.items.list operations.get operations.list debug.datasources.items.checkAccess debug.datasources.items.searchByViewUrl stats.getIndex stats.getQuery stats.getSession stats.getUser stats.index.datasources.get stats.query.searchapplications.get stats.session.searchapplications.get stats.user.search applications.get debug.identitysources.items.listForunmappedidentity debug.identitysources.unmappedids.list debug.datasources.items.unmappedids.list query.sources.list query.suggest query.search stats.getSearchapplication |
Formato degli audit log
Le voci degli audit log possono essere visualizzate in Cloud Logging utilizzando Esplora log, l'API Cloud Logging o lo strumento a riga di comando gcloud e includono i seguenti oggetti:
La voce di log stessa, che è un oggetto di tipo
LogEntry
.
Di seguito vengono riportati alcuni campi utili:
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 sottoposta ad audit.- Il
protoPayload
contiene le informazioni sottoposte ad audit. - I dati di audit log, che sono un oggetto AuditLog contenuto nel campo protoPayload 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 è contenuto nel campo serviceData
dell'oggetto AuditLog
; le integrazioni successive utilizzano il campo metadata
.
Per informazioni sugli altri campi in questi oggetti e su come interpretarli, consulta Comprendere i log di controllo.
Nome log
I nomi delle risorse di Audit log di Cloud indicano il progetto Cloud o un'altra entità Google Cloud proprietaria degli audit log, oltre a specificare se il log contiene dati di audit logging relativi ad attività di amministrazione, accesso ai dati, accesso negato in base ai criteri o eventi di sistema. Ad esempio, l'esempio seguente mostra i nomi dei log per gli audit log dell'attività di amministrazione a livello di progetto e gli audit log dell'accesso ai dati di un'organizzazione. Le variabili indicano gli identificatori di progetto e organizzazione.
projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access
Nome servizio
Gli audit log di Cloud Search utilizzano il nome servizio cloudsearch.googleapis.com
.
Tipi di risorse
Tutti gli audit log di Cloud Search utilizzano il tipo di risorsa audited_resource
.
Per un elenco di altri tipi di risorse, consulta Tipi di risorse monitorate.
Abilitazione degli audit log
Per impostazione predefinita, l'audit logging è disabilitato per l'API Cloud Search. Per attivare la registrazione audit per Google Cloud Search:
(Facoltativo) Se non hai creato un progetto Google Cloud per archiviare i log, consulta Configurare l'accesso all'API Google Cloud Search.
Ottieni l'ID progetto per Google Cloud in cui vuoi archiviare i log. Per scoprire come ottenere un ID progetto, consulta la pagina Identificazione dei progetti.
Per abilitare la registrazione degli audit log per un'API specifica, devi determinare la categoria di log da abilitare. Per le API e le relative categorie, consulta la sezione Operazioni sottoposte ad audit all'inizio di questo documento.
Utilizza il metodo dell'API REST
updateCustomer()
per aggiornare auditLogSettings con le categorie di log da attivare:Ottieni un token di accesso OAuth 2.0 dal server di autorizzazione Google. Per informazioni su come ottenere il token, consulta il passaggio 2 dell'articolo Utilizzare OAuth 2.0 per accedere alle API di Google. Utilizza uno dei seguenti ambiti OAuth durante l'ottenimento del token di accesso:
https://www.googleapis.com/auth/cloud_search.settings.indexing
https://www.googleapis.com/auth/cloud_search.settings
https://www.googleapis.com/auth/cloud_search
Esegui questo comando curl.
curl --request PATCH \ 'https://cloudsearch.googleapis.com/v1/settings/customer?updateMask=auditLoggingSettings&key=[YOUR_API_KEY]' \ --header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \ --header 'Content-Type: application/json' \ --data '{"auditLoggingSettings": { "project": "projects/PROJECT_ID", "CATEGORY1": "true", "CATEGORY2": "true" } }'
Dove:
YOUR_ACCESS_TOKEN
è il token di accesso OAuth 2.0 ottenuto nel passaggio 4a.PROJECT_ID
è l'ID progetto ottenuto nel passaggio 2.CATEGORY1
,CATEGORY2
e…
sono le categorie che hai scelto di attivare nel passaggio 3. I valori validi sonologAdminReadActions
,logDataWriteActions
elogDataReadActions
. Le azioni di scrittura amministratore sono abilitate per impostazione predefinita e non possono essere disattivate. Se vuoi il logging di controllo per i metodi di query, devi attivare la categoria Lettura dei dati.
Dopo l'aggiornamento di
AuditLoggingSettings
, le ulteriori richieste all'API Cloud Search generano un log di controllo nell'ID progetto specificato inAuditLoggingSettings
.La registrazione degli audit log per i metodi di query richiede l'abilitazione della categoria Lettura dei dati (operazione eseguita nel passaggio 4). Per attivare la registrazione degli audit per i metodi di query (
query.sources.list
,query.suggest
equery.search
), segui questi passaggi aggiuntivi:Per ogni applicazione di ricerca per cui vuoi attivare la registrazione degli audit, recupera il nome. Il nome deve essere nel formato
searchapplications/<search_application_id>
.Utilizza il nome per chiamare
settings.searchapplications.update
conenableAuditLog
impostato sutrue
.
Per attivare la registrazione degli audit per le chiamate da
cloudsearch.google.com
, assicurati che la categoria Lettura dei dati sia abilitata (passaggio 4). Inoltre, esegui il passaggio 5b con unname
disearchapplications/default
.
Una volta abilitati, i log possono essere visualizzati nella sezione Esplora log della console Google Cloud. Utilizza il seguente filtro per visualizzare solo gli audit log di Cloud Search:
protoPayload.serviceName="cloudsearch.googleapis.com"
Per informazioni su come visualizzare i log, consulta Panoramica di Esplora log.
Autorizzazioni degli audit log
I ruoli e le autorizzazioni di Identity and Access Management determinano quali audit log puoi visualizzare o esportare. I log si trovano all'interno dei progetti Cloud e in alcune altre entità, tra cui organizzazioni, cartelle e account di fatturazione Cloud. Per ulteriori informazioni, consulta la sezione Informazioni sui ruoli.
Per visualizzare gli audit log delle attività di amministrazione, devi disporre di uno dei seguenti ruoli IAM nel progetto che contiene gli audit log:
- Proprietario progetto, Editor progetto o Visualizzatore progetto
- Ruolo Visualizzatore log di Logging
- Un
ruolo IAM personalizzato con
l'autorizzazione IAM
logging.logEntries.list
Per visualizzare gli audit log di accesso ai dati, devi disporre di uno dei seguenti ruoli nel progetto che contiene gli audit log:
- Proprietario progetto
- Ruolo Visualizzatore log privati di Logging
- Un ruolo IAM personalizzato
con l'autorizzazione IAM
logging.privateLogEntries.list
Se utilizzi gli audit log di un'entità non di progetto, ad esempio un'organizzazione, cambia i ruoli del progetto Cloud nei ruoli organizzativi appropriati.
Visualizza i log
Per trovare e visualizzare gli audit log, devi conoscere l'identificatore del progetto, della cartella o dell'organizzazione Cloud per cui vuoi visualizzare le informazioni di audit logging. Puoi specificare ulteriormente altri campi
LogEntry
indicizzati, come resource.type. Per i dettagli, consulta
Creare query in Esplora log.
Di seguito sono riportati i nomi dei log di controllo, che includono variabili per gli identificatori del progetto, della cartella o dell'organizzazione Cloud:
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 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
Hai diverse opzioni per visualizzare le voci di audit log.
Console
Puoi utilizzare Esplora log in Cloud Console per recuperare le voci del log di controllo per il tuo progetto Cloud:
Nella console Cloud, vai alla pagina Logging > Esplora log.
Nella pagina Esplora log, seleziona un progetto cloud esistente.
Nel riquadro Query Builder, procedi nel seguente modo:
In Risorsa, seleziona il tipo di 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 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 negati da criteri, seleziona policy.
Se non vedi queste opzioni, significa che non sono disponibili audit log di questo tipo nel progetto Cloud.
Per ulteriori dettagli sull'esecuzione di query utilizzando il nuovo Esplora log, consulta Creare query in Esplora log.
gcloud
gcloud fornisce un'interfaccia a riga di comando per l'API Logging. Fornisci un
PROJECT_ID
, FOLDER_ID
o ORGANIZATION_ID
valido in ciascuno dei nomi dei log.
Per leggere le voci di log di controllo 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 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 di audit log a livello di organizzazione, esegui questo comando:
gcloud logging read "logName : organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com" \ --organization=ORGANIZATION_ID
Per saperne di più sull'utilizzo dello strumento gcloud, consulta
gcloud logging read
.
API
Quando crei le query, sostituisci le variabili con valori validi, sostituisci il nome o gli identificatori del log di controllo appropriati a livello di progetto, cartella o organizzazione, come elencato nei nomi dei log di controllo. Ad esempio, se la query include PROJECT_ID, l'identificatore di progetto che fornisci deve fare riferimento al progetto Cloud attualmente selezionato.
Per utilizzare l'API Logging per esaminare le voci del log di controllo:
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
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 Esegui.
Per ulteriori dettagli sulle query, consulta la sezione Linguaggio delle query di Logging.
Per un esempio di voce dell'audit log e su come trovare le informazioni più importanti, vedi Comprendere i log di controllo.
Esportazione degli audit log
Puoi esportare i log di controllo nello stesso modo in cui esporti gli altri tipi di log. Per i dettagli su come esportare i log, consulta Esportazione dei log. Di seguito sono riportate alcune applicazioni legate all'esportazione degli audit log:
Per conservare gli audit log più a lungo o utilizzare funzionalità di ricerca più avanzate, puoi esportare delle copie degli audit log in Cloud Storage, BigQuery o Pub/Sub. Utilizzando Pub/Sub, puoi eseguire l'esportazione in altre applicazioni, altri repository e terze parti.
Per gestire gli audit log in tutta l'organizzazione, puoi creare dei sink aggregati che permettono di esportare i log da qualsiasi progetto Cloud o anche da tutti i progetti Cloud nell'organizzazione.
Se gli audit log di accesso ai dati abilitati causano il possibile superamento della soglia consentita per i progetti Cloud, puoi esportarli ed escluderli da Logging. Per i dettagli, consulta la pagina relativa all'esclusione dei log.
Prezzi e fidelizzazione
Cloud Logging non addebita alcuna spesa per gli audit log che non possono essere disabilitati, inclusi tutti gli audit log delle attività di amministrazione. Cloud Logging addebita dei costi per gli audit log di accesso ai dati che richiedi esplicitamente.
Per ulteriori informazioni sui prezzi degli audit log, consulta la pagina Prezzi della suite operativa di Google Cloud.
La durata dell'archiviazione associata ai log di controllo di Cloud Search è:
- Log delle attività di amministrazione (o scrittura amministratore): questi log vengono conservati per 400 giorni.
- Log di accesso ai dati (lettura amministratore, scrittura dati e lettura dati): questi log vengono conservati per 30 giorni.
Per saperne di più sulla durata dell'archiviazione, vedi Periodi di conservazione dei log.
Limitazioni attuali
L'audit logging di Cloud Search presenta le seguenti limitazioni attuali:
La dimensione della voce di log deve essere inferiore a 512 KB. Se le dimensioni superano i 512 KB, la risposta viene eliminata dalla voce di log. Se la dimensione non viene ridotta a 512 KB o meno, la richiesta viene eliminata. Infine, se le dimensioni superano ancora 512 KB, la voce di log viene eliminata.
I corpi delle risposte non vengono registrati per i metodi
list()
,get()
esuggest()
. Tuttavia, gli stati delle risposte sono disponibili.Vengono registrate solo le chiamate all'API Query da
cloudsearch.google.com
(se abilitata) e dalle applicazioni di ricerca dei clienti.Per le chiamate
search()
, nella richiesta vengono registrati soloQuery
,RequestOptions
eDataSourceRestriction
. Nella risposta vengono controllati solo l'URL e i metadati (origine eobjectType
) di ogniSearchResult
.Le chiamate emesse al backend di Cloud Search e corrispondenti all'esportazione dei dati non vengono controllate.