En esta página, se describe cómo crear o actualizar las reglas de filtrado por IP del bucket en un bucket existente.
Roles requeridos
Para obtener los permisos necesarios para actualizar las reglas de filtrado de IP en un bucket, pídele a tu administrador que te otorgue el rol de administrador de almacenamiento (roles/storage.admin) en el bucket. Este rol contiene los permisos necesarios para actualizar las reglas de filtrado por IP del bucket.
Para ver los permisos exactos que son necesarios, expande la sección Permisos necesarios:
Permisos necesarios
storage.buckets.updatestorage.buckets.setIpFilter
También puedes obtener estos permisos con roles personalizados. También puedes obtener estos permisos con otros roles predefinidos. Para ver qué roles están asociados con qué permisos, consulta Roles de IAM para Cloud Storage.
Si deseas obtener instrucciones para otorgar roles a proyectos, consulta Configura y administra políticas de IAM en buckets.
Crea o actualiza reglas de filtrado de IP en un bucket existente
gcloud
Verifica que tengas instalada la versión 526.0.0 o posterior de Google Cloud CLI:
gcloud version | head -n1Si tienes instalada una versión anterior de gcloud CLI, actualízala:
gcloud components update --version=526.0.0Crea un archivo JSON que defina reglas para las solicitudes entrantes. Para obtener ejemplos e información sobre cómo estructurar las reglas de filtrado de IP del bucket, consulta Configuraciones de filtrado de IP del bucket.
{ "mode":"MODE", "publicNetworkSource":{ "allowedIpCidrRanges":[ "RANGE_CIDR", "..." ] }, "vpcNetworkSources":[ { "network":"projects/PROJECT_ID/global/networks/NETWORK_NAME", "allowedIpCidrRanges":[ "RANGE_CIDR", "..." ] }, "..." ], "allowCrossOrgVpcs": ALLOW_CROSS_ORG_VPCS, "allowAllServiceAgentAccess": ALLOW_ALL_SERVICE_AGENT_ACCESS }
Aquí:
MODEes el modo de configuración del filtro de IP del bucket. Los valores válidos sonEnabledyDisabled. Cuando se establece enEnabled, se aplican reglas de filtrado de IP a un bucket. Todas las solicitudes entrantes al bucket se evalúan en función de estas reglas. Cuando se establece enDisabled, se permite que todas las solicitudes entrantes accedan al bucket.RANGE_CIDRes un rango de direcciones IPv4 o IPv6 de red pública al que se le permite acceder al bucket. Puedes ingresar uno o varios rangos de direcciones como una lista.PROJECT_IDes el ID del proyecto en el que existe la red de nube privada virtual (VPC). Para configurar varias redes de VPC, debes especificar el proyecto en el que se encuentra cada red.NETWORK_NAMEes el nombre de la red de VPC que tiene permiso para acceder al bucket. Para configurar varias redes de VPC, debes especificar un nombre para cada red.ALLOW_CROSS_ORG_VPCSes un valor booleano que indica si se deben permitir las redes de VPC definidas envpcNetworkSourcespara que se originen en una organización diferente. Este campo es opcional. Si se configura comotrue, la solicitud permite redes de VPC entre organizaciones. Si se establece enfalse, la solicitud restringe las redes de VPC a la misma organización que el bucket. Si no se especifica, el valor predeterminado esfalse. Este campo solo se aplica sivpcNetworkSourcesno está vacío.ALLOW_ALL_SERVICE_AGENT_ACCESSes un valor booleano que indica si se debe permitir que los agentes de servicio accedan al bucket, independientemente de la configuración del filtro de IP. Si el valor estrue, otros servicios de Google Cloud pueden usar agentes de servicio para acceder al bucket sin validación basada en IP.
Para actualizar las reglas de filtrado por IP del bucket, ejecuta el comando
gcloud alpha storage buckets updateen tu entorno de desarrollo:gcloud alpha storage buckets update gs://BUCKET_NAME --ip-filter-file=IP_FILTER_CONFIG_FILE
Aquí:
BUCKET_NAMEes el nombre de tu depósito. Por ejemplo,my-bucketIP_FILTER_CONFIG_FILEes el archivo JSON que creaste en el paso anterior.
API de REST
API de JSON
Tener la gcloud CLI instalada e inicializada, lo que te permite generar un token de acceso para el encabezado
Authorization.Crea un archivo JSON que contenga la configuración del bucket, que debe incluir los campos de configuración
nameyipFilterpara el bucket. Para ver ejemplos y obtener información sobre cómo estructurar las reglas de filtrado por IP del bucket, consulta Configuraciones de filtrado por IP del bucket.{ "ipFilter":{ "mode":"MODE", "publicNetworkSource":{ "allowedIpCidrRanges":[ "RANGE_CIDR", "..." ] }, "vpcNetworkSources":[ { "network":"projects/PROJECT_ID/global/networks/NETWORK_NAME", "allowedIpCidrRanges":[ "RANGE_CIDR", "..." ] }, "..." ], "allowCrossOrgVpcs": ALLOW_CROSS_ORG_VPCS, "allowAllServiceAgentAccess": ALLOW_ALL_SERVICE_AGENT_ACCESS } }
Aquí:
MODEes el estado de la configuración del filtro de IP. Los valores válidos sonEnabledyDisabled. Cuando se establece enEnabled, las reglas de filtrado de IP se aplican a un bucket y todas las solicitudes entrantes al bucket se evalúan según estas reglas. Cuando se configura comoDisabled, todas las solicitudes entrantes pueden acceder al bucket y a sus datos sin ninguna evaluación.RANGE_CIDRes un rango de direcciones IPv4 o IPv6 de red pública al que se le permite acceder al bucket. Puedes ingresar uno o varios rangos de direcciones como una lista.PROJECT_IDes el ID del proyecto en el que existe la red de VPC. Para configurar varias redes de VPC, debes especificar el proyecto en el que se encuentra cada red.NETWORK_NAMEes el nombre de la red de VPC que tiene permiso para acceder al bucket. Para configurar varias redes de VPC, debes especificar un nombre para cada red.ALLOW_ALL_SERVICE_AGENT_ACCESSes un valor booleano que indica si se permite que los agentes de servicio accedan al bucket, independientemente de la configuración del filtro de IP. Si el valor estrue, otros servicios de Google Cloud pueden usar agentes de servicio para acceder al bucket sin validación basada en IP.ALLOW_CROSS_ORG_VPCSes un valor booleano que indica si se deben permitir las redes de VPC definidas en la listavpcNetworkSourcespara que se originen en una organización diferente. Este campo es opcional. Si se configura comotrue, la solicitud permite redes de VPC entre organizaciones. Si se configura comofalse, la solicitud restringe las redes de VPC a la misma organización que el bucket. Si no se especifica, el valor predeterminado esfalse. Este campo solo se aplica sivpcNetworkSourcesno está vacío.
Usa
cURLpara llamar a la API de JSON con una solicitud de bucket de PATCH:curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?project=PROJECT_IDENTIFIER"
Aquí:
JSON_FILE_NAMEes el nombre del archivo JSON que creaste en el paso anterior.BUCKET_NAMEes el nombre de tu depósito.PROJECT_IDENTIFIERes el ID o el número del proyecto con el que se asocia tu bucket. Por ejemplo,my-project.
¿Qué sigue?
- Enumera las reglas de filtrado de IP del bucket.
- Inhabilita las reglas de filtrado de IP del bucket.
Pruébalo tú mismo
Si es la primera vez que usas Google Cloud, crea una cuenta para evaluar el rendimiento de Cloud Storage en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
Probar Cloud Storage gratis