Questa guida spiega come attivare o disattivare alcuni o tutti gli audit log degli accessi ai dati nel tuo Progetti, account di fatturazione, cartelle e organizzazioni Google Cloud per la console Google Cloud o l'API.
Prima di iniziare
Prima di procedere con la configurazione degli audit log di accesso ai dati, tieni presente le seguenti informazioni:
Gli audit log di accesso ai dati, tranne quelli di BigQuery, sono disabilitati per impostazione predefinita. Se vuoi che gli audit log per l'accesso ai dati vengano scritti per servizi Google Cloud diversi da BigQuery, devi abilitarli esplicitamente.
Gli audit log di accesso ai dati sono archiviati
_Default
bucket a meno che li hai indirizzati altrove. Per ulteriori informazioni, consulta Archiviazione e routing dei log di controllo.Gli audit log degli accessi ai dati aiutano l'Assistenza Google a risolvere i problemi relativi al tuo account. Consigliamo quindi di abilitare gli audit log di accesso ai dati quando possibile.
Panoramica configurazione
Puoi configurare la modalità di attivazione degli audit log di accesso ai dati per le tue risorse e i tuoi servizi Google Cloud:
Organizzazioni: puoi attivare e configurare gli audit log di accesso ai dati in un'organizzazione, che si applicano a tutti i progetti e le cartelle Google Cloud esistenti e nuovi dell'organizzazione.
Cartelle: puoi abilitare e configurare gli audit log di accesso ai dati in un , che si applica a tutti i progetti Google Cloud nuovi ed esistenti in nella cartella. Non puoi disabilitare un audit log di accesso ai dati abilitato in all'organizzazione principale del progetto.
Progetti: puoi configurare gli audit log di accesso ai dati per un singolo progetto Google Cloud. Non puoi disabilitare un audit log di accesso ai dati che è stato abilitato in un'organizzazione o una cartella principale.
Account di fatturazione: configurare gli audit log di accesso ai dati per la fatturazione puoi usare Google Cloud CLI. Per ulteriori informazioni sull'utilizzo gcloud CLI con gli audit log di accesso ai dati e gli account di fatturazione, consulta
gcloud beta billing accounts set-iam-policy
documentazione.Configurazioni predefinite: puoi specificare un audit log di accesso ai dati predefinito configurazione in un'organizzazione, una cartella o un progetto Google Cloud si applica ai futuri servizi Google Cloud che iniziano a produrre dati Accedere agli audit log. Per istruzioni, vedi Imposta la configurazione predefinita.
Tipi di autorizzazioni: puoi specificare che le API Google Cloud per controllare se un determinato tipo di autorizzazione emette un audit log. Per ulteriori informazioni, consulta la sezione Tipi di autorizzazione di questa pagina.
Principali esenti: puoi esentare entità principali specifiche dall'essere registrate per gli accessi ai dati. Ad esempio, puoi escludere per gli account di test interni dalla gestione delle operazioni di Cloud Monitoring registrato. Per un elenco di entità valide, inclusi utenti e gruppi, vedi il Riferimento tipo
Binding
.
Puoi configurare gli audit log di accesso ai dati tramite il IAM Audit Logs della console Google Cloud oppure utilizzando l'API. Questi metodi sono descritti nelle sezioni seguenti.
Tipi di autorizzazioni
I metodi dell'API controllano le autorizzazioni IAM. Autorizzazioni IAM
hanno una proprietà type
, il cui valore è una delle seguenti autorizzazioni
tipi:
ADMIN_READ
: vengono controllate le autorizzazioni IAM di questo tipo Metodi dell'API Google Cloud che leggono i metadati o la configurazione informazioni.DATA_READ
: vengono controllate le autorizzazioni IAM di questo tipo Metodi dell'API Google Cloud che leggono i dati forniti dall'utente.DATA_WRITE
: vengono verificate le autorizzazioni IAM di questo tipo per i metodi dell'API Google Cloud che scrivono i dati forniti dall'utente.ADMIN_WRITE
: vengono controllate le autorizzazioni IAM di questo tipo Metodi dell'API Google Cloud che scrivono metadati o configurazioni informazioni. Gli audit log associati a questo tipo Audit log delle attività di amministrazione sono attive per impostazione predefinita e non possono essere disattivate.
La maggior parte delle API Google Cloud controlla solo una singola autorizzazione IAM e l'attivazione del tipo associato all'autorizzazione per il servizio attiva il log di controllo associato al metodo chiamato.
Puoi attivare o disattivare i tipi di autorizzazione per i servizi utilizzando la console Google Cloud o invocando l'API.
Le sezioni seguenti descrivono in generale altri modi in cui i metodi dell'API Google Cloud verificano le autorizzazioni IAM. Per servizi specifici informazioni sui metodi che vengono controllati e sui tipi di autorizzazione. Consulta la documentazione relativa agli audit log del servizio.
Controllo delle autorizzazioni IAM per i tipi di autorizzazioni di accesso ai dati
Alcuni metodi dell'API Google Cloud verificano che un principale disponga di più autorizzazioni IAM con tipi di autorizzazione diversi. Un log di controllo viene scritto quando uno dei tipi di autorizzazione associati a un'autorizzazione IAM è abilitato nel progetto di destinazione della chiamata all'API.
Ad esempio, un metodo API potrebbe verificare che il principale che emette una richiesta di API abbia le autorizzazioni example.resource.get
(DATA_READ
) e example.resource.write
(DATA_WRITE
). Per consentire al servizio di emettere il log di controllo al momento dell'emissione della chiamata, è sufficiente che nel progetto sia attivata DATA_WRITE
o DATA_READ
.
Tipi di autorizzazioni IAM per l'attività di amministrazione e l'accesso ai dati selezionati
Alcuni metodi dell'API Google Cloud controllano sia un'autorizzazione IAM con il tipo di autorizzazione ADMIN_WRITE
sia una o più autorizzazioni con un tipo di autorizzazione di accesso ai dati. Questi tipi di chiamate API
emetti gli audit log delle attività di amministrazione,
sono attive per impostazione predefinita e non possono essere disattivate.
Metodo API che controlla le autorizzazioni IAM non di proprietà del servizio
Alcuni servizi Google Cloud dispongono di metodi API che controllano un Autorizzazione IAM di proprietà di un altro servizio. In questo caso, il tipo di autorizzazione deve essere attivato per il servizio proprietario dell'autorizzazione IAM per attivare il log di controllo associato al metodo API chiamato.
Ad esempio, la fatturazione Cloud ha un metodo API che controlla la presenza di un ADMIN_READ
tipo di autorizzazione di proprietà di Resource Manager. ADMIN_READ
deve essere attivato per il servizio cloudresourcemanager.googleapis.com
per attivare il log di controllo associato all'API Cloud Billing.
Lo stesso metodo API controlla autorizzazioni IAM diverse
Alcune API Google Cloud controllano autorizzazioni IAM diverse con tipi di autorizzazioni diversi a seconda della modalità di chiamata dei metodi dell'API. Un l'audit log viene scritto quando uno dei tipi di autorizzazioni IAM viene abilitata per il progetto scelto come target dalla chiamata API.
Ad esempio, Spanner ha un metodo API che a volte controlla la presenza di un'autorizzazione IAM con il tipo DATA_WRITE
e a volte la presenza di un'autorizzazione IAM con il tipo DATA_READ
, a seconda di come viene chiamato il metodo. In questo caso, l'abilitazione di DATA_WRITE
per Spanner nel progetto attiva il log di controllo associato all'API solo quando è selezionata l'autorizzazione IAM con il tipo DATA_WRITE
.
Configurazioni specifiche per i servizi
Se esiste sia una configurazione a livello di servizio Google Cloud (allServices
) sia una configurazione per un servizio Google Cloud specifico, la configurazione risultante per il servizio è l'unione delle due configurazioni.
In altre parole:
Puoi attivare gli audit log di accesso ai dati per servizi Google Cloud specifici, ma non puoi disattivarli per i servizi Google Cloud abilitati nella configurazione più ampia.
Puoi aggiungere altri tipi di informazioni all'audit log di accesso ai dati di un servizio Google Cloud, ma non puoi rimuovere i tipi di informazioni specificati nella configurazione più ampia.
Puoi aggiungere i principali agli elenchi di esenzione, ma non puoi rimuoverli dagli elenchi di esenzione nella configurazione più ampia.
Per BigQuery Data Transfer Service, la configurazione dell'audit log di accesso ai dati è ereditato dalla configurazione predefinita dell'audit log.
Configurazioni delle risorse Google Cloud
Puoi configurare gli audit log degli accessi ai dati per progetti, account di fatturazione, cartelle e organizzazioni Google Cloud. Se esiste una configurazione per un servizio Google Cloud nella gerarchia, la configurazione risultante è l'unione delle configurazioni. In altre parole, Livello di progetto Google Cloud:
Puoi attivare i log per un servizio Google Cloud, ma non puoi disattivare i log per un servizio Google Cloud attivato in un'organizzazione o una cartella principale.
Puoi attivare tipi di informazioni, ma non puoi disattivare i tipi di informazioni attivati in un'organizzazione o una cartella principale.
Puoi aggiungere entità agli elenchi di esenzione, ma non puoi rimuoverle dagli elenchi di esenzioni in un'organizzazione o una cartella padre.
A livello di organizzazione o cartella principale, puoi attivare gli audit log di accesso ai dati per un progetto Google Cloud all'interno di quell'organizzazione o cartella, anche se gli audit log di accesso ai dati non sono stati configurati nel progetto Google Cloud.
Controllo degli accessi
I ruoli e le autorizzazioni di Identity and Access Management regolano l'accesso ai dati di Logging, tra cui la visualizzazione e la gestione Criteri IAM di base del controllo di accesso ai dati configurazioni di logging.
Per visualizzare o impostare i criteri associati alla configurazione di Accesso ai dati, devi avere un ruolo con autorizzazioni a livello di risorsa appropriato. Per istruzioni su per la concessione di questi ruoli a livello di risorsa, consulta Gestire l'accesso a progetti, cartelle e organizzazioni di Google Cloud.
Per impostare i criteri IAM, devi avere un ruolo con
resourcemanager.RESOURCE_TYPE.setIamPolicy
autorizzazione.Per visualizzare i criteri IAM, devi avere un ruolo con
resourcemanager.RESOURCE_TYPE.getIamPolicy
autorizzazione.
Per l'elenco delle autorizzazioni e dei ruoli necessari per visualizzare il controllo di accesso ai dati i log, consulta Controllo dell'accesso con IAM.
Configurare gli audit log di accesso ai dati con la console Google Cloud
Questa sezione spiega come utilizzare la console Google Cloud per configurare gli audit log di Data Access.
Puoi anche utilizzare l'API o Google Cloud CLI per eseguire queste attività in modo programmatico. Per maggiori dettagli, consulta Configurare gli audit log di accesso ai dati con l'API.
Per accedere alle opzioni di configurazione degli audit log nella console Google Cloud, segui questi passaggi:
-
Nella console Google Cloud, vai alla pagina Log di controllo:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo IAM e Console di amministrazione.
Seleziona un progetto, una cartella o un'organizzazione Google Cloud esistente.
Abilita audit log
Per abilitare gli audit log di accesso ai dati, segui questi passaggi:
Nella tabella Configurazione degli audit log di accesso ai dati, seleziona uno o più servizi Google Cloud dalla colonna Servizio.
Nella scheda Tipi di log, seleziona i tipi di audit log di accesso ai dati che vuoi attivare per i servizi selezionati.
Fai clic su Salva.
Se hai attivato correttamente i log di controllo, la tabella include un'icona check_circle Controlla.
Nell'esempio seguente, noti che per il servizio Approvazione accesso è abilitato il tipo di audit log Lettura dati:
Puoi anche attivare gli audit log per tutti i servizi Google Cloud che generano audit log di accesso ai dati. Nella tabella Configurazione degli audit log di accesso ai dati, seleziona tutti i servizi Google Cloud.
Tieni presente che questo metodo di configurazione collettiva si applica solo ai servizi Google Cloud attualmente disponibili per la tua risorsa. Se un nuovo Il servizio Google Cloud viene aggiunto, eredita configurazione predefinita dell'audit.
Disabilita gli audit log di accesso ai dati
Per disabilitare gli audit log di accesso ai dati, segui questi passaggi:
Nella tabella Configurazione degli audit log di accesso ai dati, seleziona uno o più servizi Google Cloud.
Nella scheda Tipi di log nel riquadro delle informazioni, seleziona il campo Accesso ai dati tipi di audit log che vuoi disabilitare per i servizi selezionati.
Fai clic su Salva.
Se hai disabilitato gli audit log di accesso ai dati, la tabella indica con un trattino. Gli audit log di accesso ai dati abilitati sono indicati con il simbolo check_circle Segno di spunta.
Impostare le esenzioni
Puoi impostare esenzioni per controllare quali entità generano dati Accedere agli audit log per determinati servizi. Quando aggiungi un'entità esente, gli audit log non vengono creati per i tipi di log selezionati.
Per impostare le esenzioni:
Nella tabella Configurazione degli audit log di accesso ai dati, seleziona un'opzione Servizio Google Cloud dalla colonna Servizio.
Seleziona la scheda Entità esenti nel riquadro delle informazioni.
In Aggiungi entità esente, inserisci l'entità da escludere dalla generazione degli audit log di accesso ai dati per il servizio selezionato.
Puoi aggiungere più principali facendo clic sul pulsante Aggiungi principale esente tutte le volte che è necessario.
Per un elenco di entità valide, inclusi utenti e gruppi, consulta il riferimento al tipo di
Binding
.In Disabled Log Types (Tipi di log disabilitati), seleziona i tipi di audit log di accesso ai dati che vuoi disattivare.
Fai clic su Salva.
Quando hai aggiunto correttamente entità esenti a un servizio, viene restituito lo strumento La tabella per la configurazione degli audit log di accesso lo indica con un numero sotto la colonna Colonna Entità esenti.
Per rimuovere un'entità dall'elenco di esenzione, segui questi passaggi:
Nella tabella Configurazione degli audit log di accesso ai dati, seleziona un'opzione Servizio Google Cloud dalla colonna Servizio.
Seleziona la scheda Principali esenti nel riquadro delle informazioni.
Passa il mouse sopra il nome di un principale e seleziona l'icona di eliminazione delete visualizzata.
Dopo che il nome dell'entità viene visualizzato barrato, fai clic su Salva.
Per modificare le informazioni di un'entità esentata:
Nella tabella Configurazione degli audit log di accesso ai dati, seleziona un servizio Google Cloud dalla colonna Servizio.
Seleziona la scheda Principali esenti nel riquadro delle informazioni.
Espandi expand_more il nome dell'entità.
Seleziona o deseleziona i tipi di audit log di accesso ai dati in base alle esigenze dell'entità.
Fai clic su Salva.
Impostare la configurazione predefinita
Puoi impostare una configurazione che tutti i servizi Google Cloud nuovi ed esistenti ereditino nel progetto, nella cartella o nell'organizzazione Google Cloud. L'impostazione di questa configurazione predefinita si applica se diventa disponibile un nuovo servizio Google Cloud e gli amministratori della tua organizzazione iniziano a utilizzarlo: il servizio eredita il criterio di audit logging che hai già impostato per altri servizi Google Cloud, garantendo la registrazione degli audit log di accesso ai dati.
Per impostare o modificare la configurazione predefinita:
Fai clic su Imposta configurazione predefinita.
Nella scheda Tipi di log del riquadro delle informazioni, seleziona i tipi di log di controllo dell'accesso ai dati che vuoi attivare o disattivare.
Fai clic su Salva.
Seleziona la scheda Entità esenti nel riquadro delle informazioni.
In Aggiungi entità esente, inserisci l'entità da escludere dalla generazione degli audit log di accesso ai dati per il servizio selezionato.
Puoi aggiungere più entità: facendo clic sul pulsante Aggiungi entità esente tutte le volte che vuoi.
Per un elenco di entità valide, inclusi utenti e gruppi, consulta il riferimento al tipo di
Binding
.In Tipi di log disabilitati, seleziona i tipi di audit log di accesso ai dati. che vuoi disabilitare.
Fai clic su Salva.
Configurare gli audit log di accesso ai dati con l'API
Questa sezione spiega come utilizzare l'API e l'interfaccia a riga di comando gcloud per configurare gli audit log di accesso ai dati in modo programmatico.
Molte di queste attività possono essere eseguite anche utilizzando la console Google Cloud. per le istruzioni, vedi Configura gli audit log di accesso ai dati con la console Google Cloud in questa pagina.
Oggetti dei criteri IAM
Per configurare gli audit log di accesso ai dati utilizzando l'API, devi modificare il
Criterio IAM associato al progetto, alla cartella o alla cartella Google Cloud
o organizzazione. La configurazione dell'audit log si trova nella sezione auditConfigs
di
le norme:
"auditConfigs": [
{
object(AuditConfig)
}
]
Per maggiori dettagli, consulta IAM Tipo di criterio.
Le seguenti sezioni descrivono in modo più dettagliato l'oggetto AuditConfig
.
Per i comandi dell'API e dell'interfaccia a riga di comando gcloud utilizzati per modificare la configurazione, consulta getIamPolicy e setIamPolicy
AuditConfig
oggetti
La configurazione dei log di controllo è costituita da un elenco di oggetti
AuditConfig
. Ogni oggetto configura i log per un servizio o stabilisce una configurazione più ampia per tutti i servizi. Ogni oggetto ha il seguente aspetto:
{
"service": SERVICE_NAME,
"auditLogConfigs": [
{
"logType": "ADMIN_READ"
"exemptedMembers": [ PRINCIPAL,]
},
{
"logType": "DATA_READ"
"exemptedMembers": [ PRINCIPAL,]
},
{
"logType": "DATA_WRITE"
"exemptedMembers": [ PRINCIPAL,]
},
]
},
SERVICE_NAME ha un valore come "appengine.googleapis.com"
o è il valore speciale "allServices"
. Se una configurazione non menziona una particolare
per il servizio viene utilizzata la configurazione più ampia. Se non è presente alcuna configurazione, significa che gli audit log di accesso ai dati non sono abilitati per quel servizio.
Per un elenco dei nomi dei servizi, consulta
Servizi di log.
La sezione auditLogConfigs
dell'oggetto AuditConfig
è un elenco di 0-3
ognuno dei quali configura un tipo di informazioni sugli audit log. Se ometti uno dei tipi dall'elenco, questo tipo di informazioni non viene attivato per il servizio.
PRINCIPAL è un utente per il quale non vengono raccolti gli audit log di accesso ai dati. Il
tipo Binding
descrive diversi tipi di principali, tra cui
utenti e gruppi, ma non tutti possono essere utilizzati per configurare i log di controllo Accesso ai dati.
Di seguito è riportato un esempio di configurazione di controllo nei formati JSON e YAML. Il formato YAML è quello predefinito quando utilizzi Google Cloud CLI.
JSON
"auditConfigs": [ { "auditLogConfigs": [ { "logType": "ADMIN_READ" }, { "logType": "DATA_WRITE" }, { "logType": "DATA_READ" } ], "service": "allServices" }, { "auditLogConfigs": [ { "exemptedMembers": [ "499862534253-compute@developer.gserviceaccount.com" ], "logType": "ADMIN_READ" } ], "service": "cloudsql.googleapis.com" } ],
YAML
auditConfigs:
- auditLogConfigs:
- logType: ADMIN_READ
- logType: DATA_WRITE
- logType: DATA_READ
service: allServices
- auditLogConfigs:
- exemptedMembers:
- 499862534253-compute@developer.gserviceaccount.com
logType: ADMIN_READ
service: cloudsql.googleapis.com
Configurazioni comuni
Di seguito sono riportate alcune configurazioni comuni dei log di controllo per i progetti Google Cloud.
Abilita tutti gli audit log di accesso ai dati
La seguente sezione auditConfigs
abilita gli audit log di accesso ai dati per tutti
e le entità:
JSON
"auditConfigs": [ { "service": "allServices", "auditLogConfigs": [ { "logType": "ADMIN_READ" }, { "logType": "DATA_READ" }, { "logType": "DATA_WRITE" }, ] }, ]
YAML
auditConfigs:
- auditLogConfigs:
- logType: ADMIN_READ
- logType: DATA_WRITE
- logType: DATA_READ
service: allServices
Attiva un solo tipo di servizio e informazioni
La seguente configurazione abilita DATA_WRITE
audit log di accesso ai dati per
Cloud SQL:
JSON
"auditConfigs": [ { "service": "cloudsql.googleapis.com", "auditLogConfigs": [ { "logType": "DATA_WRITE" }, ] }, ]
YAML
auditConfigs:
- auditLogConfigs:
- logType: DATA_WRITE
service: cloudsql.googleapis.com
Disattivare tutti gli audit log di accesso ai dati
Per disabilitare tutti gli audit log di accesso ai dati (tranne BigQuery) in un
nel progetto Google Cloud, includi una sezione auditConfigs:
vuota nel nuovo
Criterio IAM:
JSON
"auditConfigs": [],
YAML
auditConfigs:
Se rimuovi completamente la sezione auditConfigs
dal nuovo criterio:
allora setIamPolicy
non modifica gli audit log di accesso ai dati esistenti
configurazione. Per ulteriori informazioni, vedi
La maschera di aggiornamento di setIamPolicy.
Non è possibile disabilitare gli audit log di accesso ai dati di BigQuery.
getIamPolicy
e setIamPolicy
Utilizza i metodi getIamPolicy
e setIamPolicy
dell'API Cloud Resource Manager per leggere
e scrivere il criterio IAM. Hai a disposizione diverse opzioni per
metodi specifici per utilizzare:
L'API Cloud Resource Manager dispone dei seguenti metodi:
projects.getIamPolicy projects.setIamPolicy organizations.getIamPolicy organizations.setIamPolicy
Google Cloud CLI dispone dei seguenti comandi Resource Manager:
gcloud projects get-iam-policy gcloud projects set-iam-policy gcloud resource-manager folders get-iam-policy gcloud resource-manager folders set-iam-policy gcloud organizations get-iam-policy gcloud organizations set-iam-policy gcloud beta billing accounts get-iam-policy gcloud beta billing accounts set-iam-policy
Indipendentemente dalla tua scelta, segui questi tre passaggi:
- Leggi il criterio corrente utilizzando uno dei metodi
getIamPolicy
. Salva il criterio in un file temporaneo. - Modifica il criterio nel file temporaneo.
Modifica (o aggiungi) solo la sezione
auditConfigs
. - Scrive il criterio modificato nel file temporaneo utilizzando uno dei metodi
setIamPolicy
.
setIamPolicy
non riesce se Resource Manager rileva che qualcuno
ha modificato il criterio dopo averlo letto nel primo passaggio. In questo caso,
quindi ripeti i tre passaggi.
Esempi
I seguenti esempi mostrano come configurare l'accesso ai dati del progetto
gli audit log utilizzando il comando gcloud
e l'API Cloud Resource Manager.
Per configurare gli audit log di accesso ai dati dell'organizzazione, sostituisci "progetti" versione dei comandi e dei metodi API con "organizations" completamente gestita.
gcloud
Per configurare gli audit log di accesso ai dati utilizzando
il comando gcloud projects
,
segui questi passaggi:
Leggi i criteri IAM del progetto e archiviali in un file:
gcloud projects get-iam-policy PROJECT_ID > /tmp/policy.yaml
Le norme restituite sono mostrate di seguito. Queste norme non dispongono ancora di una sezione
auditConfigs
:bindings: - members: - user:colleague@example.com role: roles/editor - members: - user:myself@example.com role: roles/owner etag: BwVM-FDzeYM= version: 1
Modifica il criterio in
/tmp/policy.yaml
, aggiungendo o modificando soltanto la configurazione dei log di controllo dell'accesso ai dati.Un esempio del criterio modificato, che abilita Cloud SQL di seguito sono riportati gli audit log di accesso ai dati data-write. Sono state aggiunte quattro righe all'inizio:
auditConfigs: - auditLogConfigs: - logType: DATA_WRITE service: cloudsql.googleapis.com bindings: - members: - user:colleague@example.com role: roles/editor - members: - user:myself@example.com role: roles/owner etag: BwVM-FDzeYM= version: 1
Scrivi il nuovo criterio IAM:
gcloud projects set-iam-policy PROJECT_ID /tmp/policy.yaml
Se il comando precedente segnala un conflitto con un'altra modifica, ripeti questi passaggi, iniziando dal primo.
JSON
Per utilizzare il criterio IAM in formato JSON anziché YAML,
sostituisci i seguenti comandi gcloud
nell'esempio:
gcloud projects get-iam-policy PROJECT_ID --format=json >/tmp/policy.json
gcloud projects set-iam-policy PROJECT_ID /tmp/policy.json
API
Per configurare gli audit log di accesso ai dati utilizzando l'API Cloud Resource Manager, procedi nel seguente modo:
Leggi il criterio IAM del progetto specificando i seguenti parametri al metodo API getIamPolicy:
- resource:
projects/PROJECT_ID
- Corpo della richiesta: vuoto
Il metodo restituisce l'oggetto criterio corrente, mostrato di seguito. Questo il criterio del progetto non ha ancora una sezione
auditConfigs
:{ "version": 1, "etag": "BwXqwxkr40M=", "bindings": [ { "role": "roles/owner", "members": [ "user:myself@example.com" ] } ] }
- resource:
Modifica il criterio corrente:
Modifica o aggiungi la sezione
auditConfigs
.Per disabilitare gli audit log di accesso ai dati, includi un valore vuoto per la sezione:
auditConfigs:[]
.Mantieni il valore di
etag
.
Puoi anche rimuovere tutte le altre informazioni dalle nuove norme purché tu stia attento a impostare
updateMask
nel passaggio successivo. Di seguito è riportato il criterio modificato, che attiva i log di controllo della scrittura dei dati di Cloud SQL:{ "policy": { "auditConfigs": [ { "auditLogConfigs": [ { "logType": "DATA_WRITE" } ], "service": "cloudsql.googleapis.com" } ], "etag": "BwXqwxkr40M=" }, "updateMask": "auditConfigs,etag" }
Scrivi il nuovo criterio utilizzando il metodo API setIamPolicy, specificando quanto segue parametri:
- risorsa:
projects/PROJECT_ID
- Corpo della richiesta: includi il criterio modificato.
- risorsa:
Maschera di aggiornamento di setIamPolicy
Questa sezione spiega l'importanza del parametro updateMask
nel metodo setIamPolicy
e perché devi fare attenzione con il comando set-iam-policy
della CLI gcloud per non causare danni accidentali al tuo progetto o alla tua organizzazione Google Cloud.
setIamPolicy API method
utilizza un parametro updateMask
per controllare i campi dei criteri da aggiornare. Ad esempio, se la maschera non contiene bindings
, non puoi modificare accidentalmente quella sezione del criterio. Invece, se la maschera contiene bindings
, la sezione viene aggiornata sempre. Se non includi un valore aggiornato per bindings
,
la sezione viene rimossa completamente dal criterio.
Il comando gcloud projects set-iam-policy
, che chiama setIamPolicy
,
non consente di specificare il parametro updateMask
. Al contrario, il comando
calcola un valore per updateMask
nel seguente modo:
updateMask
contiene sempre i campibindings
eetag
.- Se l'oggetto del criterio fornito in
set-iam-policy
contiene qualsiasi altro oggetto di primo livello, ad esempioauditConfigs
, questi campi vengono aggiunto aupdateMask
.
In base a queste regole, il comando set-iam-policy
ha i seguenti comportamenti:
Se ometti la sezione
auditConfigs
nel nuovo criterio, verrà eseguita la precedente il valore della sezioneauditConfigs
(se presente) non viene modificato, perché non è presente nella maschera di aggiornamento. Non è dannoso, ma potrebbe creare confusione.Se ometti
bindings
nel nuovo oggetto del criterio,bindings
viene rimossa dalla norma, poiché viene visualizzata nella maschera di aggiornamento. Questo è molto dannoso e fa sì che tutti i principali perdano l'accesso al tuo progetto Google Cloud.Se ometti
etag
nel nuovo oggetto del criterio, il controllo di modifiche contemporanee alle tue norme e che potrebbero comportare modifiche da parte tua sovrascrivere accidentalmente le modifiche di qualcun altro.