Endpoint posizione

Questa pagina descrive come utilizzare gli endpoint basati sulla località per accedere a Cloud Storage. Quando utilizzi endpoint basati sulla posizione, puoi assicurarti che i dati at-rest rimangano all'interno della giurisdizione per soddisfare i requisiti di residenza dei dati.

Panoramica

Gli endpoint basati sulla località sono endpoint di richiesta che consentono di procedere con le richieste solo se la risorsa interessata esiste nella posizione specificata dall'endpoint. Ad esempio, quando utilizzi l'endpoint https://us-central1-storage.googleapis.com in una richiesta di eliminazione del bucket, la richiesta procede solo se il bucket si trova in US-CENTRAL1.

A differenza degli endpoint globali, in cui le richieste possono essere elaborate in una posizione diversa da quella in cui si trova la risorsa, gli endpoint di località garantiscono che le richieste vengano elaborate solo all'interno della località specificata dall'endpoint, in cui si trova la risorsa.

L'utilizzo di endpoint basati sulla posizione garantisce che:

  • I dati archiviati in Cloud Storage non escono dalla posizione specificata.

  • I tuoi dati vengono terminati con TLS nella regione specificata dall'endpoint durante il transito da on-premise a Google Cloud.

Quando utilizzi endpoint localizzati, ti assumi le seguenti responsabilità:

  • Per ottenere garanzie di residenza dei dati, le richieste effettuate a un endpoint basato sulla località devono provenire dalla stessa località specificata dall'endpoint. Ad esempio, se utilizzi una macchina virtuale Compute Engine per eseguire una richiesta a un bucket che si trova in US-CENTRAL1 tramite l'endpoint us-central1-storage.googleapis.com, anche la macchina virtuale deve trovarsi in US-CENTRAL1.

  • Gli endpoint di localizzazione devono essere utilizzati solo durante l'esecuzione di operazioni supportate. L'esecuzione di operazioni non supportate genera un errore.

Gli endpoint localizzati supportano il traffico tra on-premise e Google Cloud tramite Interconnect o VPN e il traffico tra servizi Google Cloud (ad esempio, da BigQuery a Cloud Storage). Il traffico internet non è supportato.

Operazioni supportate

La seguente tabella riassume le operazioni che possono e non possono essere eseguite con gli endpoint regionali. In generale, le operazioni all'interno della stessa località possono essere eseguite con endpoint basati sulla posizione, mentre quelle tra località diverse non possono.

Se tenti di eseguire un'operazione non supportata utilizzando un endpoint geografico, Cloud Storage restituisce un codice di errore HTTP 400 con il messaggio: "Questo endpoint non implementa questa operazione. Utilizza l'endpoint globale".

Operazione Modifica i dati degli oggetti Supportato per l'utilizzo con endpoint basati sulla posizione
gli oggetti compongono 1
eliminazione di oggetti No 1
objects get 1
inserimento di oggetti 1
elenco degli oggetti No 1
patch degli oggetti No 1
copia degli oggetti 4
riscrittura degli oggetti 4
inserto per secchi No 2
buckets delete No 3
buckets get No 2
patch dei bucket No 2
aggiornamento dei bucket No 2
buckets getIamPolicy No 2
buckets setIamPolicy No 2
buckets testIamPermissions No 2
buckets lockRetentionPolicy No 2
bucket BucketAccessControls No 2
buckets DefaultObjectAccessControls No 2
buckets ObjectAccessControls No 2
Operazioni con le chiavi HMAC No No
Operazioni dell'account di servizio No No
Operazioni di notifica Pub/Sub Varia in base all'operazione No
Operazioni di notifica di modifica degli oggetti Varia in base all'operazione No
Operazioni batch Varia in base all'operazione No

1 Per eseguire questa operazione utilizzando gli endpoint di località, il bucket contenente l'oggetto interessato deve esistere nella località specificata dall'endpoint. Ad esempio, una richiesta di eliminazione di oggetti a us-central1-storage.googleapis.com può essere utilizzata solo per eliminare oggetti nei bucket che si trovano nella regione US-CENTRAL1. Se provi a eliminare un oggetto in una posizione diversa da US-CENTRAL1, l'operazione restituisce un errore NOT_FOUND.

2 Per eseguire questa operazione utilizzando gli endpoint di località, il bucket deve esistere nella località specificata dall'endpoint. Ad esempio, una richiesta di creazione di un bucket a us-central1-storage.googleapis.com può essere utilizzata solo per creare un bucket nella regione US-CENTRAL1. Se provi a creare il bucket in una località diversa da US-CENTRAL1, l'operazione restituisce un errore INVALID_ARGUMENT.

3 Per eseguire questa operazione utilizzando gli endpoint di localizzazione, il bucket deve esistere nella posizione specificata dall'endpoint. Ad esempio, una richiesta di eliminazione di un bucket a us-central1-storage.googleapis.com può essere utilizzata solo per eliminare un bucket nella regione US-CENTRAL1. Se provi a eliminare un bucket in una località che non è US-CENTRAL1, l'operazione restituisce un errore NOT_FOUND.

4 Per eseguire questa operazione utilizzando endpoint basati sulla posizione, i bucket di origine e di destinazione devono esistere nella posizione specificata dall'endpoint. Ad esempio, puoi utilizzare gli endpoint basati sulla località per copiare un oggetto da un bucket a un altro se entrambi i bucket si trovano nella stessa località. Tuttavia, non puoi utilizzare endpoint basati sulla località per copiare un oggetto da un bucket a un altro se i bucket si trovano in posizioni diverse. Se il bucket di origine o di destinazione si trova in una posizione diversa da quella specificata dall'endpoint, l'operazione restituisce un errore NOT_FOUND.

Aree geografiche supportate

Gli endpoint basati sulla località sono supportati per tutte le regioni degli Stati Uniti, per la multiregione US e per la doppia regione predefinita NAM4. Per saperne di più sulle regioni che possono essere specificate, consulta Località dei bucket.

Effettuare richieste

Console

Consulta Restrizioni e limitazioni per l'ITAR per informazioni su come eseguire operazioni utilizzando la console Google Cloud in modo conforme all'ITAR.

Riga di comando

Per configurare Google Cloud CLI per l'utilizzo con endpoint localizzati:

  1. Imposta la proprietà api_endpoint_overrides/storage sull'endpoint di localizzazione che vuoi utilizzare:

    gcloud config set api_endpoint_overrides/storage https://LOCATION-storage.googleapis.com/

Una volta impostata questa proprietà, puoi utilizzare i comandi gcloud CLI come di consueto.

In alternativa, puoi utilizzare gli endpoint di localizzazione per i singoli comandi impostando la variabile di ambiente CLOUDSDK_API_ENDPOINT_OVERRIDES_STORAGE in ogni comando. Ad esempio:

CLOUDSDK_API_ENDPOINT_OVERRIDES_STORAGE=https://LOCATION-storage.googleapis.com/ gcloud ls gs://my-bucket

Librerie client

Le librerie client di Cloud Storage gestiscono automaticamente gli endpoint delle richieste, ma puoi impostare manualmente gli endpoint di località. Per scoprire come impostare gli endpoint di localizzazione, consulta gli esempi di codice della libreria client che utilizzano gli endpoint di richiesta.

API REST

API JSON

Quando effettui richieste agli endpoint di localizzazione, utilizza i seguenti URI:

  • Per le richieste generali dell'API JSON, esclusi i caricamenti di oggetti, utilizza il seguente endpoint:

    https://LOCATION-storage.googleapis.com

    Sostituisci LOCATION con una posizione del bucket supportata. Ad esempio, us-central1.

  • Per i caricamenti di oggetti API JSON, utilizza il seguente endpoint:

    https://LOCATION-storage.googleapis.com/upload/storage/v1/b/BUCKET_NAME/o

    Sostituisci:

    • LOCATION con una località del bucket supportata. Ad esempio, us-central1.

    • BUCKET_NAME con il nome del bucket in cui vuoi caricare un oggetto. Ad esempio, my-example-bucket.

  • Per i download di oggetti API JSON, utilizza il seguente endpoint:

    https://LOCATION-storage.googleapis.com/download/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME?alt=media

    Sostituisci:

    • LOCATION con una località del bucket supportata. Ad esempio, us-central1.

    • BUCKET_NAME con il nome del bucket che contiene l'oggetto che vuoi scaricare. Ad esempio, my-example-bucket.

    • OBJECT_NAME con il nome dell'oggetto che vuoi scaricare. Ad esempio, waterfall.png.

Tieni presente che gli endpoint dell'API JSON supportano solo le richieste HTTPS.

API XML

Quando utilizzi l'API XML per effettuare richieste agli endpoint basati sulla località, puoi utilizzare un endpoint in stile host virtuale o un endpoint in stile percorso:

  • Endpoint di stile con hosting virtuale:

    https://BUCKET_NAME.LOCATION-storage.googleapis.com
  • Endpoint in stile percorso:

    https://LOCATION-storage.googleapis.com/BUCKET_NAME

Per entrambi i tipi di endpoint, sostituisci:

  • LOCATION con una località del bucket supportata. Ad esempio, us-central1.

  • BUCKET_NAME con un nome bucket valido. Ad esempio, my-example-bucket.

Gli endpoint dell'API XML supportano la crittografia SSL (Secure Sockets Layer), il che significa che puoi utilizzare HTTP o HTTPS. L'utilizzo di HTTPS è consigliato, soprattutto se esegui l'autenticazione in Cloud Storage utilizzando OAuth 2.0.

Formattare correttamente le richieste

Per garantire che le richieste siano compatibili con gli strumenti Cloud Storage:

Vincoli noti

Non è disponibile il supporto per gli endpoint mTLS.

Limitazione dell'utilizzo dell'endpoint API globale

Per contribuire a imporre l'utilizzo di endpoint locali, puoi utilizzare il vincolo delle policy dell'organizzazione constraints/gcp.restrictEndpointUsage per bloccare le richieste all'endpoint API globale. Per ulteriori informazioni, consulta la documentazione Limitare l'utilizzo degli endpoint.