Panoramica
Questa guida descrive come impostare un criterio dell'organizzazione che includa il vincolo delle località delle risorse.
Puoi limitare la posizione fisica di una nuova risorsa con il vincolo delle località delle risorse del servizio Criteri dell'organizzazione. Puoi utilizzare la proprietà location di una risorsa per identificare dove viene implementata e gestita dal servizio. Per contenenti dati di alcuni servizi Google Cloud, riflette anche la posizione in cui sono archiviati i dati. Questo vincolo consente di definire le località Google Cloud consentite in cui è possibile creare le risorse per i servizi supportati nella gerarchia.
Dopo aver definito le località delle risorse, questa limitazione verrà applicata solo alle risorse appena create. Le risorse create prima di impostare il vincolo delle posizioni delle risorse continueranno a esistere ed eseguiranno la loro funzione.
Un criterio che include questo vincolo non verrà applicato in modo forzato alla risorsa secondaria per determinati servizi, come Cloud Storage e Dataproc.
Limitazioni
Il vincolo del servizio dei criteri dell'organizzazione per le località delle risorse controlla la possibilità di creare risorse per le quali è possibile selezionare una località. Questo non influisce sulla posizione delle risorse globali, ad esempio Compute Engine, gli indirizzi globali o le risorse che non supportano la selezione di una località è stato creato.
Per evitare di danneggiare l'infrastruttura di pubblicazione esistente, devi testare tutte le nuove su progetti e cartelle non di produzione, quindi applica il criterio gradualmente all'interno della tua organizzazione.
Per gli impegni relativi allo spazio di archiviazione dei dati, consulta i Termini di servizio di Google Cloud e i Termini specifici dei servizi. Criteri dell'organizzazione che contengono il vincolo delle località delle risorse non sono impegni per l'archiviazione dei dati.
Questo vincolo si applica a un sottoinsieme specifico di prodotti e tipi di risorse. Per un elenco dei servizi supportati e i dettagli sul comportamento di ciascun servizio, vedi Servizi supportati per località delle risorse .
Tipi di località
Puoi eseguire il deployment delle risorse Google Cloud in tipi di località che rappresentano categorie di dimensioni diverse.
Il tipo di località più grande è multi-region
, che include più di un
region
. Ogni region
è ulteriormente suddiviso in zones
. Per saperne di più su regioni e zone, consulta la Panoramica di regioni e zone.
Multi-region
località è supportata da risorse fisiche in più di unaregion
e in genere sono utilizzati solo dalle risorse basate sullo spazio di archiviazione. Alcuni esempi includonous
,asia
,europe
eglobal
.Region
località sono geograficamente isolate tra loro. Alcuni esempi sonous-west1
(Oregon),asia-northeast1
(Tokyo) eeurope-west1
(Belgio).Le località
Zone
sono il tipo di località più granulare e isolato utilizzato per il deployment delle risorse. Unzone
è un dominio in errore indipendente all'interno di unregion
. Alcuni esempi sonous-east1-b
,us-west1-b
easia-northeast1-a
.
Quando configuri le sedi, devi utilizzare il prefisso in:
e un
Gruppo di valori: L'utilizzo di un gruppo di valori selezionato da Google Cloud consente di scegliere una o più località geografiche senza dover specificare le località Cloud attuali o future.
Il prefisso in:
di un gruppo di valori specifica che tutti i valori esistenti all'interno del gruppo di valori sono considerati parte del criterio. Se inserisci un valore di gruppo o una regione Google Cloud senza il prefisso, il prefisso in:
verrà aggiunto automaticamente in base a queste regole:
- Se inserisci una località che utilizza il prefisso
in:
e contiene termini non validi gruppo, la modifica dei criteri non andrà a buon fine. - Se inserisci una località che corrisponde a una regione, come
us-east1
, questa avrà il valore In questo esempio, il prefissoin:
è anteposto ain:us-east1-locations
. - Se inserisci un gruppo di valori per una o più regioni, come
us-locations
, in questo esempio sarà preceduto dal prefissoin:
ain:us-locations
. - Se inserisci una zona o più regioni come
us-east1-b
ous
, i valori non verrà modificato.
Impostazione del criterio dell'organizzazione
Il vincolo delle località delle risorse è un tipo di
vincolo di elenco.
Puoi aggiungere e rimuovere sedi da allowed_values
o denied_values
di un vincolo di località delle risorse. Per impedire ai criteri dell'organizzazione di limitare in modo imprevisto il comportamento del servizio man mano che vengono aggiunte nuove località all'elenco disponibile, utilizza un gruppo di valori o un elenco di allowed_values
che rappresenti l'intero confine geografico che vuoi definire.
Per impostare un criterio dell'organizzazione che includa un vincolo delle località delle risorse:
Console
Nella console Google Cloud, vai alla pagina Norme dell'organizzazione.
Dal selettore di progetti, seleziona l'organizzazione, la cartella o il progetto per cui vuoi impostare il criterio dell'organizzazione.
Seleziona Google Cloud Platform - Restrizione sulla località delle risorse per aprire la relativa pagina Dettagli criterio.
Fai clic su Gestisci criterio.
Nella pagina Modifica criterio, seleziona Sostituisci criterio della risorsa padre.
In Applicazione criterio, seleziona Sostituisci.
Fai clic su Aggiungi regola.
In Valori criterio, seleziona Personalizzato.
In Tipo di criterio, seleziona Consenti per creare un elenco di elementi consentiti. di località o seleziona Rifiuta per creare un elenco di località negate.
Nella casella Valore criterio, inserisci il prefisso
in
e un Stringa della posizione del gruppo di valori, quindi premi Invio.Ad esempio,
in:us-locations
oin:us-west1-locations
. Puoi inserire più stringhe di località facendo clic su Nuovo valore criterio.Puoi anche inserire località specifiche di zone, regioni o più regioni come stringhe di località. Per un elenco delle località disponibili, consulta la pagina Servizi supportati dalle località delle risorse.
Per applicare il criterio, fai clic su Imposta criterio.
gcloud
Per creare un criterio dell'organizzazione che applichi il vincolo delle località delle risorse, crea un file YAML del criterio che faccia riferimento al vincolo:
name: organizations/ORGANIZATION_ID/policies/gcp.resourceLocations
spec:
rules:
- values:
deniedValues:
- in:us-east1-locations
- in:northamerica-northeast1-locations
Per applicare il criterio dell'organizzazione contenente il vincolo, esegui seguente comando:
gcloud org-policies set-policy POLICY_PATH
Sostituisci quanto segue:
ORGANIZATION_ID
: il tuo ID organizzazione, ad esempio 01234567890.POLICY_PATH
: il percorso completo del file YAML contenente il criterio dell'organizzazione.
Verrà restituita una risposta con i risultati del nuovo criterio dell'organizzazione:
name: organizations/01234567890/policies/gcp.resourceLocations
spec:
rules:
- values:
allowedValues:
- in:us-east1-locations
- in:northamerica-northeast1-locations
Puoi anche inserire località specifiche di zone, regioni o più regioni come stringhe di località. Per un elenco delle località disponibili, consulta la pagina Servizi supportati dalle località delle risorse.
API
Puoi utilizzare l'API Resource Manager per impostare un criterio dell'organizzazione su un risorsa. Occorre un token di connessione OAuth 2.0 per l'autenticazione e l'autorizzazione.
Per impostare un criterio dell'organizzazione utilizzando il vincolo delle località delle risorse:
curl -X POST -H "Content-Type: application/json" -H "Authorization: \
Bearer ${bearer_token}" -d '{policy: {etag: "BwVtXec438Y=", constraint: \
"constraints/gcp.resourceLocations", list_policy: {denied_values: \
["in:europe-locations", "in:southamerica-locations"] }}}' \
https://cloudresourcemanager.googleapis.com/v1/organizations/123456789:setOrgPolicy
Verrà restituita una risposta con i risultati del nuovo criterio dell'organizzazione:
name: organizations/01234567890/policies/gcp.resourceLocations
spec:
rules:
- values:
deniedValues:
- in:europe-locations
- in:southamerica-locations
Puoi anche inserire località specifiche in una zona, una regione o più regioni come stringhe di località. Per un elenco delle località disponibili, consulta la pagina Servizi supportati dalle località delle risorse.
Per scoprire di più sull'utilizzo dei vincoli nei criteri dell'organizzazione, consulta Utilizzo dei vincoli.
Utilizzo dell'ereditarietà nei criteri dell'organizzazione
Puoi perfezionare il criterio dell'organizzazione per ereditarlo da dai nodi padre della risorsa. L'eredità ti consente di avere un controllo granulare sui criteri dell'organizzazione utilizzati in tutta la gerarchia delle risorse.
Per abilitare l'ereditarietà su un nodo risorsa, imposta inheritFromParent = true
nel
YAML dei criteri dell'organizzazione. Ad esempio:
name: organizations/01234567890/policies/gcp.resourceLocations
spec:
inheritFromParent: true
rules:
- values:
deniedValues:
- in:us-west1
Esempio di messaggio di errore
I servizi che supportano il vincolo della località della risorsa non possono creare nuove risorse in località che violerebbero il vincolo. Se un servizio tenta di creare una risorsa in una posizione che viola la limitazione, il tentativo non andrà a buon fine e verrà generato un messaggio di errore.
Questo messaggio di errore avrà il seguente formato:
LOCATION_IN_REQUEST violates constraint
constraints/gcp.resourceLocations on the resource RESOURCE_TESTED.
Nell'esempio seguente, una risorsa Compute Engine non riesce a creare un nuovo instance a causa dell'applicazione dei criteri:
Location ZONE:us-east1-b violates constraint constraints/gcp.resourceLocations
on the resource
projects/policy-violation-test/zones/us-east1-b/instances/instance-3.
Voce di log di Google Cloud Observability e Cloud Audit Logs:
{
insertId: "5u759gdngec"
logName: "projects/policy-violation-test/logs/cloudaudit.googleapis.com%2Factivity"
protoPayload: {
@type: "type.googleapis.com/google.cloud.audit.AuditLog"
authenticationInfo: {…}
authorizationInfo: [6]
methodName: "beta.compute.instances.insert"
request: {…}
requestMetadata: {…}
resourceLocation: {…}
resourceName: "projects/policy-violation-test/zones/us-east1-b/instances/instance-3"
response: {
@type: "type.googleapis.com/error"
error: {
code: 412
errors: [
0: {
domain: "global"
location: "If-Match"
locationType: "header"
message: "Location ZONE:us-east1-b violates constraint constraints/gcp.resourceLocations on the resource projects/policy-violation-test/zones/us-east1-b/instances/instance-3."
reason: "conditionNotMet"
}
]
message: "Location ZONE:us-east1-b violates constraint constraints/gcp.resourceLocations on the resource projects/policy-violation-test/zones/us-east1-b/instances/instance-3."
}
}
serviceName: "compute.googleapis.com"
status: {
code: 3
message: "INVALID_ARGUMENT"
}
}
receiveTimestamp: "2019-06-14T03:04:23.660988360Z"
resource: {
labels: {…}
type: "gce_instance"
}
severity: "ERROR"
timestamp: "2019-06-14T03:04:22.783Z"
}
Risultati relativi alle vulnerabilità e correzione
Il vincolo della posizione della risorsa limita la creazione delle risorse in fase di runtime. Questa funzione aiuta a evitare violazioni della posizione, ma non identificare o correggere violazioni esistenti. Puoi utilizzare Security Health Analytics, un servizio integrato di Security Command Center, per rilevare violazioni della posizione nella gerarchia delle risorse. Per ulteriori informazioni, vedi Risultati relativi alle vulnerabilità dei criteri dell'organizzazione.
Se sono presenti risultati di Security Health Analytics relativi a violazioni della posizione, consulta Correzione dei risultati di Security Health Analytics per conoscere la procedura da seguire per risolvere il problema.
Gruppi di valori
I gruppi di valori sono raccolte di gruppi e località curate da Google per fornire un modo semplice per definire le località delle risorse. I gruppi di valore includono molte località correlate e vengono espansi nel tempo da Google senza dover modificare i criteri dell'organizzazione per adattarli alle nuove località.
Per utilizzare i gruppi di valori nel criterio dell'organizzazione, aggiungi il prefisso alle voci
stringa in:
. Per ulteriori informazioni sull'uso dei prefissi di valore, consulta
Utilizzo dei vincoli.
I nomi dei gruppi vengono convalidati durante la chiamata per impostare il criterio dell'organizzazione. L'utilizzo di un nome di gruppo non valido comporterà il fallimento dell'impostazione del criterio.
La seguente tabella contiene l'elenco attuale dei gruppi disponibili:
Gruppo | Dettagli | Membri diretti |
---|---|---|
Johannesburg | Tutte le località a Johannesburg:in:africa-south1-locations |
Valori:
|
Asia | Tutte le località in Asia:in:asia-locations |
Gruppi:
Valori:
|
Hong Kong | Tutte le località a Hong Kong:in:asia-east2-locations |
Valori:
|
Indonesia | Tutte le località in Indonesia:in:id-locations |
Gruppi:
Valori:
|
Giacarta | Tutte le sedi all'interno di Giacarta:in:asia-southeast2-locations |
Valori:
|
Israele | Tutte le località in Israele:in:il-locations |
Gruppi:
Valori:
|
Israele | Tutte le località in Israele:in:me-west1-locations |
Valori:
|
India | Tutte le località in India:in:in-locations |
Gruppi:
Valori:
|
Mumbai | Tutte le località a Mumbai:in:asia-south1-locations |
Valori:
|
Delhi | Tutte le località all'interno di Delhi:in:asia-south2-locations |
Valori:
|
Giappone | Tutte le località all'interno del Giappone:in:jp-locations |
Gruppi:
Valori:
|
Tokyo | Tutte le località a Tokyo:in:asia-northeast1-locations |
Valori:
|
Osaka | Tutte le località all'interno di Osaka:in:asia-northeast2-locations |
Valori:
|
Corea del Sud | Tutte le località all'interno della Corea del Sud:in:kr-locations |
Gruppi:
Valori:
|
Seul | Tutte le località a Seul:in:asia-northeast3-locations |
Valori:
|
Doha | Tutte le località a Doha:in:me-central1-locations |
Valori:
|
Arabia Saudita | Tutte le località all'interno dell'Arabia Saudita:in:sa-locations |
Gruppi:
Valori:
|
Dammam | Tutte le località all'interno di Dammam:in:me-central2-locations |
Valori:
|
Singapore | Tutte le località all'interno di Singapore:in:sg-locations |
Gruppi:
Valori:
|
Singapore | Tutte le località a Singapore:in:asia-southeast1-locations |
Valori:
|
Taiwan | Tutte le località a Taiwan:in:tw-locations |
Gruppi:
Valori:
|
Taiwan | Tutte le località a Taiwan:in:asia-east1-locations |
Valori:
|
Australia | Tutte le località all'interno dell'Australia:in:australia-locations |
Gruppi:
Valori:
|
Sydney | Tutte le località a Sydney:in:australia-southeast1-locations |
Valori:
|
Melbourne | Tutte le località all'interno di Melbourne:in:australia-southeast2-locations |
Valori:
|
AWS | Tutte le località AWS:in:aws-locations |
Valori:
|
Azure | Tutte le località Azure:in:azure-locations |
Valori:
|
Unione Europea | Tutte le località all'interno dell'Unione europea:in:eu-locations |
Gruppi:
Valori:
|
Germania | Tutte le località in Germania:in:de-locations |
Gruppi:
Valori:
|
Berlino | Tutte le località a Berlino:in:europe-west10-locations |
Valori:
|
Francoforte | Tutte le sedi all'interno di Francoforte:in:europe-west3-locations |
Valori:
|
Varsavia | Tutte le sedi all'interno di Varsavia:in:europe-central2-locations |
Valori:
|
Finlandia | Tutte le località in Finlandia:in:europe-north1-locations |
Valori:
|
Madrid | Tutte le località all'interno di Madrid:in:europe-southwest1-locations |
Valori:
|
Belgio | Tutte le località in Belgio:in:europe-west1-locations |
Valori:
|
Paesi Bassi | Tutte le località all'interno dei Paesi Bassi:in:europe-west4-locations |
Valori:
|
Parigi | Tutte le sedi all'interno di Parigi:in:europe-west9-locations |
Valori:
|
Italia | Tutte le località in Italia:in:it-locations |
Gruppi:
Valori:
|
Torino | Tutte le località a Torino:in:europe-west12-locations |
Valori:
|
Milano | Tutte le sedi di Milano:in:europe-west8-locations |
Valori:
|
Europa | Tutte le località in Europa:in:europe-locations |
Gruppi:
Valori:
|
Svizzera | Tutte le località in Svizzera:in:ch-locations |
Gruppi:
Valori:
|
Zurigo | Tutte le località a Zurigo:in:europe-west6-locations |
Valori:
|
Regno Unito | Tutte le località nel Regno Unito:in:gb-locations |
Gruppi:
Valori:
|
Londra | Tutte le località all'interno di Londra:in:europe-west2-locations |
Valori:
|
Sedi a basso impatto di carbonio | Tutte le località con un impatto ridotto sul carbonio:in:low-carbon-locations |
Gruppi:
|
Canada a basse emissioni di carbonio | Tutte le località in Canada a basso impatto di carbonio:in:canada-low-carbon-locations |
Gruppi:
|
Montréal | Tutte le località a Montréal:in:northamerica-northeast1-locations |
Valori:
|
Toronto | Tutte le sedi all'interno di Toronto:in:northamerica-northeast2-locations |
Valori:
|
Unione Europea a bassa emissione di CO2 | Tutte le località dell'Unione Europea a basso impatto di carbonio:in:eu-low-carbon-locations |
Gruppi:
|
Europa a basse emissioni di carbonio | Tutte le località in Europa a basso impatto di carbonio:in:europe-low-carbon-locations |
Gruppi:
|
Nord America a basse emissioni di CO2 | Tutte le località del Nord America a basso impatto di carbonio:in:northamerica-low-carbon-locations |
Gruppi:
|
Iowa | Tutte le località in Iowa:in:us-central1-locations |
Valori:
|
Oregon | Tutte le località all'interno dell'Oregon:in:us-west1-locations |
Valori:
|
Sud America a basse emissioni di CO2 | Tutte le località del Sud America a basso impatto di carbonio:in:southamerica-low-carbon-locations |
Gruppi:
|
San Paolo | Tutte le località all'interno di San Paolo:in:southamerica-east1-locations |
Valori:
|
Stati Uniti a basse emissioni di CO2 | Tutte le località degli Stati Uniti a basso impatto di carbonio:in:us-low-carbon-locations |
Gruppi:
|
Nord America | Tutte le località in Nord America:in:northamerica-locations |
Gruppi:
Valori:
|
Canada | Tutte le località in Canada.in:canada-locations |
Gruppi:
Valori:
|
Stati Uniti | Tutte le località negli Stati Uniti:in:us-locations |
Gruppi:
Valori:
|
Oklahoma | Tutte le località all'interno dell'Oklahoma:in:us-central2-locations |
Valori:
|
Carolina del Sud | Tutte le zone della Carolina del Sud:in:us-east1-locations |
Valori:
|
Virginia del Nord | Tutte le località all'interno della Virginia del Nord:in:us-east4-locations |
Valori:
|
Columbus | Tutte le località a Columbus:in:us-east5-locations |
Valori:
|
Dallas | Tutte le sedi all'interno di Dallas:in:us-south1-locations |
Valori:
|
Los Angeles | Tutte le località a Los Angeles:in:us-west2-locations |
Valori:
|
Salt Lake City | Tutte le località a Salt Lake City:in:us-west3-locations |
Valori:
|
Las Vegas | Tutte le località a Las Vegas:in:us-west4-locations |
Valori:
|
Sud America | Tutte le località in Sud America:in:southamerica-locations |
Gruppi:
|
Brasile | Tutte le località all'interno del Brasile:in:br-locations |
Gruppi:
Valori:
|
Cile | Tutte le località in Cile:in:cl-locations |
Gruppi:
Valori:
|
Santiago | Tutte le località a Santiago:in:southamerica-west1-locations |
Valori:
|
Autenticazione
Il servizio Criteri dell'organizzazione utilizza OAuth 2.0 per l'API l'autenticazione e l'autorizzazione. Per ottenere un token di accesso OAuth 2.0:
Vai alla pagina OAuth 2.0 Playground.
Nell'elenco di ambiti del Passaggio 1, seleziona API Cloud Resource Manager v2 > https://www.googleapis.com/auth/cloud-platform e poi fai clic su Autorizza API.
Nella pagina Accedi con Google visualizzata, seleziona il tuo account e accedi in.
Per fornire l'accesso a Google Oauth 2.0 Playground, fai clic su Consenti nella che viene visualizzata.
Nel passaggio 2, fai clic su Scambia codice di autorizzazione per i token.
Nella parte inferiore del riquadro Richiesta / risposta a destra, i tuoi accessi viene visualizzata la stringa token:
{ "access_token": "ACCESS_TOKEN", "token_type": "Bearer", "expires_in": 3600 }
dove ACCESS_TOKEN è la stringa del token bearer OAuth 2.0 che puoi utilizzare per l'autorizzazione dell'API.