Questa pagina mostra come utilizzare un criterio dell'organizzazione in modalità dry run per monitorare l'impatto di una modifica alle norme sui tuoi flussi di lavoro prima dell'applicazione.
Viene creato e applicato un criterio dell'organizzazione in modalità dry run in modo simile dei criteri dell'organizzazione e le relative violazioni vengono registrate, ma le azioni in violazione non vengano rifiutate.
Prima di iniziare
Per utilizzare un criterio dell'organizzazione in modalità di prova, devi avere la fatturazione abilitata per del tuo progetto Google Cloud. Per informazioni su come controllare se la fatturazione è abilitata Per un progetto, consulta Verificare lo stato di fatturazione dei progetti.
Per ulteriori informazioni sui criteri e i vincoli dell'organizzazione vedi Introduzione al servizio Criteri dell'organizzazione.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per gestire i criteri dell'organizzazione,
chiedi all'amministratore di concederti
Ruolo IAM Amministratore criteri dell'organizzazione (roles/orgpolicy.policyAdmin
) nell'organizzazione.
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Questo ruolo predefinito contiene le autorizzazioni necessarie per gestire i criteri dell'organizzazione. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
Per gestire i criteri dell'organizzazione sono necessarie le seguenti autorizzazioni:
-
orgpolicy.constraints.list
-
orgpolicy.policies.create
-
orgpolicy.policies.delete
-
orgpolicy.policies.list
-
orgpolicy.policies.update
-
orgpolicy.policy.get
-
orgpolicy.policy.set
Potresti anche riuscire a ottenere queste autorizzazioni con ruoli personalizzati e altri ruoli predefiniti.
Limitazioni
Gli unici vincoli dei criteri dell'organizzazione disponibili per essere usati nella prova i criteri dell'organizzazione sono:
Tentativo di creare un criterio dell'organizzazione in modalità dry run utilizzando qualsiasi altro genera un errore.
Crea un criterio dell'organizzazione in modalità dry run
Vincoli elenco
Puoi creare un criterio dell'organizzazione in modalità di prova per un vincolo di elenco
utilizzando la console Google Cloud o Google Cloud CLI. I seguenti esempi
dimostrare come creare un criterio dell’organizzazione in modalità dry run che verifichi
effetto del vincolo dell'elenco gcp.restrictServiceUsage
.
Console
Nella console Google Cloud, vai alla pagina Criteri dell'organizzazione.
Dal selettore di progetti, seleziona la risorsa che vuoi impostare il criterio dell'organizzazione.
Seleziona il vincolo Limita l'utilizzo del servizio risorse dall'elenco. Nella pagina Criteri dell'organizzazione.
Seleziona la scheda Dry run.
Fai clic su Gestisci criterio dry run.
Nella pagina Modifica criterio dry run, seleziona Sostituisci criterio della risorsa padre.
In Applicazione criterio, fai clic su Sostituisci.
Fai clic su Aggiungi regola.
In Valori criterio, seleziona Personalizzato.
In Tipo di criterio, seleziona Rifiuta.
Nella casella Valori personalizzati, inserisci
compute.googleapis.com
, quindi fai clic su Fine.Se questo è un vincolo personalizzato, puoi fare clic su Testa modifiche per per simulare l'effetto di questo criterio dell'organizzazione. Per ulteriori informazioni, vedi Testare le modifiche ai criteri dell'organizzazione con Policy Simulator.
Per applicare il criterio dell'organizzazione in modalità di prova, fai clic su Imposta il criterio dry run. Puoi anche impostare il criterio Imposta criterio.
Puoi verificare lo stato del criterio dell'organizzazione in modalità dry run andando alla scheda Dry run di un vincolo del criterio dell'organizzazione.
Per i progetti a cui è stato applicato un criterio dell'organizzazione in modalità di prova, puoi visualizzare i log di controllo facendo clic su Visualizza log di rifiuto. Per
questo criterio dell'organizzazione, gli audit log mostrano violazioni come se
Il vincolo Limita l'utilizzo del servizio risorse è applicato per rifiutare
compute.googleapis.com
.
gcloud
Per creare un criterio dell'organizzazione in modalità dry run, crea un file YAML
definisce il vincolo con dryRunSpec
. Ad esempio:
name: RESOURCE_TYPE/RESOURCE_ID/policies/gcp.restrictServiceUsage dryRunSpec: rules: - values: deniedValues: - compute.googleapis.com
Sostituisci quanto segue:
RESOURCE_TYPE
conorganizations
,folders
, oprojects
.RESOURCE_ID
con l'ID organizzazione e la cartella ID, ID progetto o numero di progetto, a seconda del tipo di risorsa specificato inRESOURCE_TYPE
.
Questo criterio dell'organizzazione non applicherà gcp.restrictServiceUsage
ma gli audit log mostrano le violazioni come se fossero presenti.
Puoi impostare un criterio dell'organizzazione attivo e un criterio dell'organizzazione di prova
nello stesso file YAML, se definisci sia spec
sia dryRunSpec
. Per
esempio:
name: RESOURCE_TYPE/RESOURCE_ID/policies/gcp.restrictServiceUsage spec: rules: - values: allowedValues: - container.googleapis.com dryRunSpec: rules: - values: allowedValues: - compute.googleapis.com - appengine.googleapis.com
Per applicare un criterio dell'organizzazione in modalità di prova, utilizza
Comando org-policies set policy
. Per aggiornare un criterio dell'organizzazione esistente
in modalità dry run con nuovi vincoli, usa il flag --update-mask
. Per
esempio:
gcloud org-policies set-policy POLICY_PATH \ --update-mask=UPDATE_MASK
Sostituisci quanto segue:
POLICY_PATH
con il percorso completo YAML dei criteri dell'organizzazione.UPDATE_MASK
conspec
per aggiornare solo criterio pubblicato odryRunSpec
per aggiornare solo il criterio dell'organizzazione modalità dry run. Puoi anche usare*
per aggiornare siaspec
siadryRunSpec
campi. Se questo campo non viene impostato durante l'aggiornamento di un modello esistente criterio dell'organizzazione, questo comando genererà un errore e il criterio dell'organizzazione non verrà aggiornato.
Puoi verificare che il criterio dell'organizzazione in modalità dry run sia impostato utilizzando
il comando org-policies describe
. Il campo dryRunSpec
viene visualizzato solo se
nel criterio dell'organizzazione.
Questo criterio dell'organizzazione applicherà l'gcp.restrictServiceUsage
vincolo tale che solo container.googleapis.com
è consentito. Tuttavia,
gli audit log mostrano violazioni di compute.googleapis.com
appengine.googleapis.com
.
Vincoli booleani
Puoi creare un criterio dell'organizzazione in modalità dry run per un vincolo booleano utilizzando la console Google Cloud o Google Cloud CLI. I seguenti esempi dimostrare come creare un criterio dell’organizzazione in modalità dry run che verifichi effetto di un criterio dell'organizzazione personalizzato booleano.
Console
Nella console Google Cloud, vai alla pagina Criteri dell'organizzazione.
Dal selettore di progetti, seleziona la risorsa che vuoi impostare il criterio dell'organizzazione.
Seleziona dall'elenco il criterio dell'organizzazione personalizzato che vuoi applicare Nella pagina Criteri dell'organizzazione.
Seleziona la scheda Dry run.
Fai clic su Gestisci criterio dry run.
Nella pagina Modifica criterio di prova, seleziona Sostituisci criterio della risorsa padre.
Fai clic su Aggiungi regola.
In Applicazione, seleziona On, quindi fai clic su Fine.
Per applicare il criterio dell'organizzazione in modalità di prova, fai clic su Imposta il criterio dry run. Dopo aver verificato che il criterio dell'organizzazione funziona come previsto, puoi impostare il criterio attivo facendo clic Imposta criterio.
Puoi verificare lo stato del criterio dell'organizzazione in modalità dry run andando alla scheda Dry run di un vincolo del criterio dell'organizzazione.
Per i progetti a cui è applicato un criterio dell'organizzazione in modalità di prova Puoi visualizzare i log di controllo facendo clic su Visualizza i log di rifiuto. Per questo criterio dell'organizzazione, gli audit log mostrano violazioni come se un criterio dell'organizzazione personalizzato.
gcloud
Per creare un criterio dell'organizzazione in modalità dry run, crea un file YAML
definisce il vincolo con dryRunSpec
. Ad esempio:
name: RESOURCE_TYPE/RESOURCE_ID/policies/CONSTRAINT_NAME dryRunSpec: rules: - enforce: true
Sostituisci quanto segue:
RESOURCE_TYPE
conorganizations
,folders
, oprojects
.RESOURCE_ID
con l'ID organizzazione e la cartella ID, ID progetto o numero di progetto, a seconda del tipo di risorsa specificato inRESOURCE_TYPE
.CONSTRAINT_NAME
con il nome della tua personalizzata di blocco. Ad esempio,custom.disableGkeAutoUpgrade
.
Questo criterio dell'organizzazione non applicherà il vincolo personalizzato, ma gli audit log mostrano le violazioni come se fossero presenti.
Puoi impostare un criterio dell'organizzazione attivo e un criterio dell'organizzazione in
modalità dry run nello stesso file YAML, se definisci sia spec
che
dryRunSpec
. Ad esempio:
name: RESOURCE_TYPE/RESOURCE_ID/policies/CONSTRAINT_NAME spec: rules: - enforce: false dryRunSpec: rules: - enforce: true
Per applicare un criterio dell'organizzazione in modalità di prova, utilizza
Comando org-policies set policy
. Per aggiornare un criterio dell'organizzazione esistente
in modalità dry run con nuovi vincoli, usa il flag --update-mask
. Per
esempio:
gcloud org-policies set-policy POLICY_PATH \ --update-mask=UPDATE_MASK
Sostituisci quanto segue:
POLICY_PATH
con il percorso completo YAML dei criteri dell'organizzazione.UPDATE_MASK
conspec
per aggiornare solo criterio pubblicato odryRunSpec
per aggiornare solo il criterio dell'organizzazione modalità dry run. Puoi anche usare*
per aggiornare siaspec
siadryRunSpec
campi. Se questo campo non viene impostato durante l'aggiornamento di un modello esistente criterio dell'organizzazione, questo comando genererà un errore e il criterio dell'organizzazione non verrà aggiornato.
Puoi verificare che sia impostato un criterio dell'organizzazione in modalità dry run utilizzando
il comando org-policies describe
. Il campo dryRunSpec
viene visualizzato solo se
nel criterio dell'organizzazione.
Questo criterio dell'organizzazione non applica il vincolo personalizzato. Tuttavia, gli audit log mostrano violazioni del vincolo personalizzato.
Crea un criterio dell'organizzazione in modalità dry run da un criterio attivo
Puoi utilizzare un criterio dell'organizzazione esistente come punto di partenza per del criterio dell'organizzazione in modalità dry run. Potresti voler eseguire questa operazione per scoprire impatti che una modifica al criterio esistente avrebbe sul tuo ambiente.
Puoi creare un criterio dell'organizzazione in modalità di prova in base a un utilizzando la console Google Cloud o Google Cloud CLI.
Console
Nella console Google Cloud, vai alla pagina Criteri dell'organizzazione.
Dal selettore di progetti, seleziona una risorsa che dispone già Vincolo di limitazione dell'utilizzo del servizio risorse configurato.
Seleziona il vincolo Limita l'utilizzo del servizio risorse dall'elenco. Nella pagina Criteri dell'organizzazione.
Seleziona la scheda Pubblicati.
Fai clic su Gestisci criterio.
Fai clic su Aggiungi regola.
In Valori criterio, seleziona Personalizzato.
In Tipo di criterio, seleziona Rifiuta.
Nella casella Valori personalizzati, inserisci
appengine.googleapis.com
.Fai clic su Fine, quindi su Imposta criterio dry run.
gcloud
Per creare un criterio dell'organizzazione in modalità dry run basato su un modello dal vivo esistente
criterio dell'organizzazione, recupera il criterio corrente sulla risorsa utilizzando
Comando org-policies describe
. Ad esempio:
gcloud org-policies describe gcp.restrictServiceUsage \ --project=PROJECT_ID
Sostituisci PROJECT_ID
con l'ID progetto o il progetto
del progetto in cui è configurato questo criterio dell'organizzazione.
L'output dovrebbe essere simile al seguente:
name: projects/123456789012/policies/gcp.restrictServiceUsage spec: etag: CJy93KEGEKCJw/QB rules: - values: allowedValues: - compute.googleapis.com updateTime: '2023-04-12T21:11:56.512804Z'
Copia l'output di questo comando in un file temporaneo. Modifica questo file in
rimuovi i campi etag
e updateTime
e cambia il campo spec
in
dryRunSpec
. Apporta le modifiche alla configurazione del vincolo
vuoi testare il criterio dell'organizzazione
in modalità di prova.
Il file YAML completato dovrebbe avere un aspetto simile al seguente:
name: projects/123456789012/policies/gcp.restrictServiceUsage dryRunSpec: rules: - values: allowedValues: - compute.googleapis.com - appengine.googleapis.com
Per applicare il criterio dell'organizzazione in modalità di prova, utilizza
org-policies set policy
con il flag --update-mask
. Ad esempio:
gcloud org-policies set-policy POLICY_PATH \ --update-mask=dryRunSpec
Sostituisci POLICY_PATH
con il percorso completo del tuo
il file YAML temporaneo dei criteri dell'organizzazione.
Elimina un criterio dell'organizzazione in modalità dry run
Puoi eliminare un criterio dell'organizzazione in modalità dry run utilizzando console Google Cloud o Google Cloud CLI.
Console
Nella console Google Cloud, vai alla pagina Criteri dell'organizzazione.
Dal selettore di progetti, seleziona la risorsa che vuoi impostare il criterio dell'organizzazione.
Seleziona il vincolo Limita l'utilizzo del servizio risorse dall'elenco. Nella pagina Criteri dell'organizzazione.
Seleziona la scheda Dry run.
Fai clic su Elimina criterio dry run.
gcloud
Per eliminare un criterio dell'organizzazione in modalità dry run, crea un file YAML definisce il criterio dell'organizzazione senza una specifica dry run. Per esempio:
name: RESOURCE_TYPE/RESOURCE_ID/policies/gcp.restrictServiceUsage spec: rules: - values: allowedValues: - container.googleapis.com
Sostituisci quanto segue:
RESOURCE_TYPE
conorganizations
,folders
oprojects
.RESOURCE_ID
con l'ID organizzazione e la cartella ID, ID progetto o numero di progetto, a seconda del tipo di risorsa specificato inRESOURCE_TYPE
.
Quindi, usa il comando org-policies set policy
con --update-mask
impostato su dryRunSpec
. Ad esempio:
gcloud org-policies set-policy POLICY_PATH \ --update-mask=dryRunSpec
Viene aggiornato il criterio dell'organizzazione esistente per rimuovere la prova e ignora la parte attiva della specifica.
Per eliminare sia i criteri dell'organizzazione attivi sia quelli dell'organizzazione in
contemporaneamente in modalità dry run, usa il comando org-policies delete
. Per
esempio:
gcloud org-policies delete CONSTRAINT_NAME \ --RESOURCE_TYPE=RESOURCE_ID
Sostituisci quanto segue:
CONSTRAINT_NAME
con il nome del vincolo da eliminare. Ad esempio,gcp.restrictServiceUsage
.RESOURCE_TYPE
conorganizations
,folders
oprojects
.RESOURCE_ID
con l'ID organizzazione e la cartella ID, ID progetto o numero di progetto, a seconda del tipo di risorsa specificato inRESOURCE_TYPE
.
Valutazione efficace dei criteri dell'organizzazione in modalità di prova
I criteri dell'organizzazione in modalità dry run vengono ereditati in modo simile ad altri criteri dell'organizzazione. Se un criterio dell'organizzazione in modalità di prova viene impostato su una organizzazione, viene ereditato da tutte le risorse discendenti, a meno che non a un livello inferiore nella gerarchia.
La valutazione effettiva dei criteri mostra il risultato dei criteri dell'organizzazione uniti in quella risorsa. Pertanto, gli aggiustamenti alle live i criteri dell'organizzazione si riflettono nell'effettivo criterio dell'organizzazione modalità dry run, se il criterio della modalità dry run viene ereditato anziché impostato localmente.
Ad esempio, prendi in considerazione una risorsa organizzazione, Organization A
, con un'attività
criterio dell'organizzazione impostato su enforced: false
e un criterio dell'organizzazione in
modalità dry run impostata su enforced: true
. Anche una risorsa figlio, Folder B
, imposta
il criterio dell'organizzazione attivo su enforced: false
ed eredita
del criterio dell'organizzazione
in modalità dry run. Su Folder B
, il criterio attivo impostato significa
l'efficace valutazione dei criteri dell'organizzazione in modalità dry run è
anche enforce: false
, eseguendo l'override del criterio dell'organizzazione in modalità dry run
e l'organizzazione principale.
Una risorsa secondaria di Folder B
, Project X
, imposta il criterio attivo su
enforced: true
. Analogamente al comportamento su Folder B
, lo stato
la valutazione del criterio dell'organizzazione in modalità di prova per Project X
è
enforced: true
, perché è impostato il criterio attivo.
Un'altra risorsa secondaria di Folder B
, Project Y
, imposta il criterio dell'organizzazione
in modalità dry run fino a enforced: true
. Eredita il criterio dell'organizzazione da
dalla relativa risorsa padre, quindi la valutazione effettiva è enforced: false
il criterio attivo e enforced: true
per il criterio dell'organizzazione in modalità dry run
.
Risorsa | Imposta criterio dell'organizzazione attivo | Criterio dell'organizzazione attivo effettivo | Imposta il criterio dell'organizzazione in modalità dry run | Criterio dell'organizzazione effettivo in modalità dry run |
---|---|---|---|---|
Organizzazione A | enforced: false |
enforced: false |
enforced: true |
enforced: true |
Cartella B | enforced: false |
enforced: false |
Nessuno | enforced: false |
Cartella C | Nessuno | enforced: false |
Nessuno | enforced: true |
Progetto X | enforced: true |
enforced: true |
Nessuno | enforced: true |
Progetto Y | Nessuno | enforced: false |
enforced: true |
enforced: true |
Analizzare gli effetti di un criterio dell'organizzazione in modalità dry run
Un criterio dell'organizzazione in modalità dry run non blocca alcuna operazione quando in modo forzato. Per vedere l'effetto che il criterio dell'organizzazione potrebbe avere, consulta: gli audit log dei criteri dell'organizzazione.
Log di controllo dei criteri dell'organizzazione per i criteri dell'organizzazione e l'organizzazione attivi I criteri in modalità dry run vengono generati a seconda che l'operazione sia consentita o meno o negato dai criteri applicati su una determinata risorsa. La tabella seguente descrive le situazioni in cui viene generato un log di controllo dei criteri dell'organizzazione:
Criterio dell'organizzazione live | Criterio dell'organizzazione in modalità dry run | Log di controllo generato |
---|---|---|
Consenti | Consenti | No |
Consenti | Rifiuta | Log di controllo solo in modalità dry run |
Rifiuta | Consenti | Log di controllo in modalità live e dry run |
Rifiuta | Rifiuta | Log di controllo in modalità live e dry run |
Le violazioni dei criteri dell'organizzazione in modalità dry run vengono visualizzate insieme alle violazioni in e la modalità live degli audit log. Ad esempio:
{
"protoPayload": {
"@type": "type.googleapis.com/google.cloud.audit.AuditLog",
"status": {
"code": 7,
"message": "PERMISSION_DENIED"
},
"authenticationInfo": {},
"requestMetadata": {
"callerIp": "1.2.3.4",
"requestAttributes": {},
"destinationAttributes": {}
},
"serviceName": "appengine.googleapis.com",
"methodName": "google.api.appengine.v1.appengine.apps.services.get",
"resourceName": "projects/sur-project-test-3",
"metadata": {
"constraint": "constraints/gcp.restrictServiceUsage",
"checkedValue": "appengine.googleapis.com",
"liveResult": "ALLOWED",
"@type": "type.googleapis.com/google.cloud.audit.OrgPolicyDryRunAuditMetadata",
"dryRunResult": "DENIED"
}
},
"insertId": "1f2bvoxcmg1",
"resource": {
"type": "audited_resource",
"labels": {
"project_id": "sur-project-test-3",
"service": "appengine.googleapis.com",
"method": "google.api.appengine.v1.appengine.apps.services.get"
}
},
"timestamp": "2022-06-16T19:42:58.244990928Z",
"severity": "WARNING",
"logName": "projects/sur-project-test-3/logs/cloudaudit.googleapis.com%2Fpolicy",
"receiveTimestamp": "2022-06-16T19:42:59.572025716Z"
}
Puoi utilizzare Esplora log per eseguire query solo sul criterio dell'organizzazione in modalità dry run violazioni delle modalità.
Console
Nella console Google Cloud, puoi utilizzare Esplora log per recuperare le voci di audit log per il progetto, la cartella o organizzazione:
Nella console Google Cloud, vai alla Logging> Esplora log.
Seleziona un progetto, una cartella o un'organizzazione Google Cloud esistente.
Nel riquadro Query Builder, procedi nel seguente modo:
In Tipo di risorsa, seleziona la risorsa Google Cloud la cui di controllo degli audit log che vuoi visualizzare.
In Nome log, seleziona il tipo di audit log policy.
Nel riquadro Query, inserisci quanto segue:
protoPayload.metadata.dryRunResult = "DENIED" AND \ protoPayload.metadata.liveResult = "ALLOWED"
Se riscontri problemi quando cerchi di visualizzare i log nel Esplora log, consulta le informazioni per la risoluzione dei problemi.
Per ulteriori informazioni sull'esecuzione di query utilizzando Esplora log, consulta Crea query in Esplora log.
gcloud
Google Cloud CLI fornisce un'interfaccia a riga di comando l'API Logging. Fornisci un identificatore di risorsa valido in ciascun log i nomi degli utenti. Ad esempio, se la query include un ID progetto, l'identificatore del progetto fornito deve fare riferimento al nome del progetto attualmente selezionato.
Come leggere le voci dell'audit log per il criterio dell'organizzazione in modalità dry run violazioni, esegui questo comando:
gcloud logging read protoPayload.metadata.dryRunResult = "DENIED" AND \ protoPayload.metadata.liveResult = "ALLOWED" \ --RESOURCE_TYPE=RESOURCE_ID \
Sostituisci quanto segue:
RESOURCE_TYPE
conorganization
,folder
oproject
.RESOURCE_ID
con l'ID organizzazione e la cartella ID, ID progetto o numero di progetto, a seconda del tipo di risorsa specificato inRESOURCE_TYPE
.
Aggiungi il flag --freshness
al comando per leggere i log che sono più
più di 1 giorno fa.
Per ulteriori informazioni sull'utilizzo di gcloud CLI, consulta
gcloud logging read
Se nella tua organizzazione sono presenti molti progetti, puoi utilizzare i sink aggregati per aggregare e instradare le voci di audit log da tutti i progetti nel della tua organizzazione in una tabella BigQuery. Per ulteriori informazioni sulla creazione i sink aggregati, consulta Facolta e instrada i log a livello di organizzazione verso le destinazioni supportate.
Passaggi successivi
Per saperne di più su come creare e gestire i criteri dell'organizzazione consulta la sezione Utilizzo dei vincoli.