En esta página, se describe cómo usar extremos de ubicación para acceder a Cloud Storage. Los extremos locales te permiten ejecutar tus cargas de trabajo de una manera que cumpla con el Reglamento de Tráfico Internacional de Armas (ITAR).
Para obtener más información de las restricciones cuando se usa Cloud Storage de una manera que cumpla con ITAR, consulta Restricciones y limitaciones para ITAR.
Descripción general
Los extremos de ubicación son extremos de solicitud que solo permiten que las solicitudes continúen si el recurso afectado existe en la ubicación especificada por el extremo. Por ejemplo, cuando usas el extremo https://us-central1-storage.googleapis.com
en una solicitud de eliminación de buckets, la solicitud solo continúa si el bucket se encuentra en US-CENTRAL1
.
A diferencia de los extremos globales, en los que las solicitudes se pueden procesar en una ubicación diferente desde donde reside el recurso, los extremos de ubicación garantizan que tus solicitudes solo se procesen dentro de la ubicación que especifica el extremo, donde reside el recurso. Cuando usas extremos geográficos, puedes asegurarte de que tus datos en reposo y en tránsito permanezcan dentro de la jurisdicción para cumplir con los requisitos de residencia de datos.
El uso de extremos de ubicación garantiza lo siguiente:
Tus datos almacenados en Cloud Storage no salen de la ubicación especificada.
Los datos finalizan con TLS en la región que especifica el extremo cuando se transmite de las instalaciones locales a Google Cloud.
Cuando tus datos están en tránsito entre los servicios de Google Cloud, los datos permanecen en la jurisdicción.
Cuando usas extremos de ubicación, asumes las siguientes responsabilidades:
Para obtener garantías de residencia de datos, las solicitudes realizadas a un extremo de ubicación deben originarse desde la misma ubicación que especifica el extremo. Por ejemplo, si usas una máquina virtual de Compute Engine para realizar una solicitud a un bucket que reside en
US-CENTRAL1
a través del extremous-central1-storage.googleapis.com
, la máquina virtual también debe residir enUS-CENTRAL1
.Los extremos de ubicación solo deben usarse cuando se realizan operaciones compatibles. Realizar operaciones no compatibles genera un error.
Los extremos de ubicación admiten el tráfico en tránsito entre el entorno local y Google Cloud a través de la interconexión o la VPN, y el tráfico en tránsito entre los servicios de Google Cloud (por ejemplo, de BigQuery a Cloud Storage). No se admite el tráfico de Internet.
Operaciones admitidas
En la siguiente tabla, se resumen las operaciones que se pueden realizar y no se pueden realizar con extremos de ubicación. En general, las operaciones dentro de la ubicación se pueden realizar con extremos de ubicación, mientras que las operaciones entre ubicaciones no.
Si intentas realizar una operación no compatible a través de extremos de ubicación, Cloud Storage muestra un código de error HTTP 400 con el mensaje “Este extremo no implementa esta operación. Usa el extremo global”.
Operación | Muta los datos del objeto | Es compatible con el uso con extremos de ubicación |
---|---|---|
objects compose | Sí | Sí1 |
objects delete | No | Sí1 |
objects get | Sí | Sí1 |
objects insert | Sí | Sí1 |
objects list | No | Sí1 |
objects patch | No | Sí1 |
objects copy | Sí | Sí4 |
objects rewrite | Sí | Sí4 |
buckets insert | No | Sí2 |
buckets delete | No | Sí3 |
buckets get | No | Sí2 |
buckets patch | No | Sí2 |
buckets update | No | Sí2 |
buckets getIamPolicy | No | Sí2 |
buckets setIamPolicy | No | Sí2 |
buckets testIamPermissions | No | Sí2 |
buckets lockRetentionPolicy | No | Sí2 |
buckets BucketAccessControls | No | Sí2 |
buckets DefaultObjectAccessControls | No | Sí2 |
buckets ObjectAccessControls | No | Sí2 |
Operaciones de claves HMAC | No | No |
Operaciones de la cuenta de servicio | No | No |
Operaciones de notificación de Pub/Sub | Varía según la operación | No |
Operaciones de notificación de cambio de objeto | Varía según la operación | No |
Operaciones por lotes | Varía según la operación | No |
1 Para realizar esta operación con extremos de ubicación, el bucket que contiene el objeto afectado debe existir en la ubicación que especifica el extremo. Por ejemplo: una solicitud de eliminación de objeto a us-central1-storage.googleapis.com
solo se puede usar para borrar objetos en buckets que residen en la región US-CENTRAL1
. Si intentas borrar un objeto en una ubicación que no sea US-CENTRAL1
, la operación mostrará un error NOT_FOUND
.
2 Para realizar esta operación con extremos de ubicación, el bucket debe existir en la ubicación que especifica el extremo. Por ejemplo: una solicitud de creación de bucket a us-central1-storage.googleapis.com
solo se puede usar para crear un bucket en la región US-CENTRAL1
. Si intentas crear el bucket en una ubicación que no sea US-CENTRAL1
, la operación mostrará un error INVALID_ARGUMENT
.
3 Para realizar esta operación con extremos de ubicación, el bucket debe existir en la ubicación que especifica el extremo. Por ejemplo: una solicitud de eliminación de bucket a us-central1-storage.googleapis.com
solo se puede usar para borrar un bucket en la región US-CENTRAL1
. Si intentas borrar un bucket en una ubicación que no sea US-CENTRAL1
, la operación mostrará un error NOT_FOUND
.
4 Para realizar esta operación con extremos de ubicación, los buckets de origen y destino deben existir en la ubicación que especifica el extremo. Por ejemplo, puedes usar extremos de ubicación para copiar un objeto de un bucket a otro si ambos buckets existen en la misma ubicación. Sin embargo, no puedes usar extremos de ubicación para copiar un objeto de un bucket a otro si los buckets existen en ubicaciones diferentes. Si el bucket de origen o de destino existe en una ubicación diferente a la que especifica el extremo, la operación muestra un error NOT_FOUND
.
Regiones admitidas
Los extremos geográficos son compatibles con todas las regiones de EE.UU., la multirregión US
y la región doble predefinida NAM4
. Para obtener más información de qué regiones se pueden especificar, consulta Ubicaciones de buckets.
Realiza solicitudes
Console
Consulta Restricciones y limitaciones de ITAR para obtener información acerca de cómo realizar operaciones a través de la consola de Google Cloud de una manera que cumpla con ITAR.
Línea de comandos
Si deseas configurar Google Cloud CLI para usarla con extremos de ubicación, haz lo siguiente:
Configura la propiedad
api_endpoint_overrides/storage
en el extremo local que deseas usar:gcloud config set api_endpoint_overrides/storage https://LOCATION-storage.googleapis.com/
Una vez que configures esta propiedad, podrás usar los comandos de gcloud CLI como lo harías con normalidad.
Como alternativa, puedes usar extremos de ubicación para comandos individuales si configuras la variable de entorno CLOUDSDK_API_ENDPOINT_OVERRIDES_STORAGE
en cada comando. Por ejemplo:
CLOUDSDK_API_ENDPOINT_OVERRIDES_STORAGE=https://LOCATION-storage.googleapis.com/ gcloud ls gs://my-bucket
Bibliotecas cliente
Las bibliotecas cliente de Cloud Storage administran los extremos de solicitud de manera automática, pero puedes configurar de forma manual los extremos de ubicación. Si deseas obtener información acerca de cómo configurar extremos de ubicación, consulta las muestras de código de la biblioteca cliente con extremos de solicitud.
API de REST
API de JSON
Cuando realices solicitudes a extremos de ubicación, usa los URI siguientes:
Para las solicitudes generales de la API de JSON, sin incluir las cargas de objetos, usa el siguiente extremo:
https://LOCATION-storage.googleapis.com
Reemplaza LOCATION por una ubicación de bucket compatible. Por ejemplo,
us-central1
.Para cargas de objeto de la API de JSON, usa el extremo siguiente:
https://LOCATION-storage.googleapis.com/upload/storage/v1/b/BUCKET_NAME/o
Reemplaza lo siguiente:
LOCATION por una ubicación de bucket compatible. Por ejemplo,
us-central1
.BUCKET_NAME por el nombre del bucket en el que deseas subir un objeto. Por ejemplo,
my-example-bucket
Para las descargas de objetos de la API de JSON, usa el extremo siguiente:
https://LOCATION-storage.googleapis.com/download/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME?alt=media
Reemplaza lo siguiente:
LOCATION por una ubicación de bucket compatible. Por ejemplo,
us-central1
.BUCKET_NAME por el nombre del bucket que contiene el objeto que deseas descargar. Por ejemplo,
my-example-bucket
OBJECT_NAME por el nombre del objeto que deseas descargar. Por ejemplo,
waterfall.png
Ten en cuenta que los extremos de la API de JSON solo admiten solicitudes HTTPS.
API de XML
Cuando usas la API de XML para realizar solicitudes a extremos de ubicación, puedes usar un extremo de estilo de alojamiento virtual o un extremo de estilo de ruta de acceso:
Extremo de estilo de alojamiento virtual:
https://BUCKET_NAME.LOCATION-storage.googleapis.com
Extremo de estilo de ruta de acceso:
https://LOCATION-storage.googleapis.com/BUCKET_NAME
Para ambos tipos de extremos, reemplaza lo siguiente:
LOCATION por una ubicación de bucket compatible. Por ejemplo,
us-central1
.BUCKET_NAME por un nombre de bucket válido. Por ejemplo,
my-example-bucket
Los extremos de la API de XML son compatibles con la encriptación de la capa de conexión segura (SSL), lo que significa que puedes usar HTTP o HTTPS. Se recomienda usar HTTPS, en especial si realizas la autenticación en Cloud Storage con OAuth 2.0.
Solicitudes de formato adecuadas
Para asegurarte de que tus solicitudes sean compatibles en las herramientas de Cloud Storage, sigue estos pasos:
Asegúrate de codificar de forma correcta los caracteres especiales que aparecen en el nombre del objeto o en la cadena de consulta del URI de solicitud.
Familiarízate con la asignación de nombres de buckets y las consideraciones de nombres de buckets.
Restricciones conocidas
No se admiten los extremos de mTLS.