Crear o actualizar reglas de filtrado de IP en un segmento

En esta página se describe cómo crear o actualizar las reglas de filtrado por IP de un cubo en un cubo ya creado.

Roles obligatorios

Para obtener los permisos necesarios para actualizar las reglas de filtrado por IP de un segmento, pide a tu administrador que te conceda el rol Administrador de almacenamiento (roles/storage.admin) en el segmento. Este rol contiene los permisos necesarios para actualizar las reglas de filtrado por IP de un segmento.

Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:

Permisos obligatorios

  • storage.buckets.update
  • storage.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 a qué permisos, consulta Roles de gestión de identidades y accesos de Cloud Storage.

Para obtener instrucciones sobre cómo conceder roles a proyectos, consulta el artículo Gestionar el acceso a proyectos.

Crear o actualizar reglas de filtrado de IP en un segmento

gcloud

  1. Verifica que tienes instalada la versión 526.0.0 o una posterior de Google Cloud CLI:

    gcloud version | head -n1
    
  2. Si tienes instalada una versión anterior de la CLI de gcloud, actualízala:

    gcloud components update --version=526.0.0
    
  3. Crea un archivo JSON que defina las reglas de las solicitudes entrantes. Para ver ejemplos e información sobre cómo estructurar las reglas de filtrado por IP de los contenedores, consulta Configuraciones de filtrado por IP de los contenedores.

        {
          "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
        }
        

    Donde:

    • MODE es el modo de la configuración de filtrado de IP del segmento. Los valores válidos son Enabled y Disabled. Si se define como Enabled, las reglas de filtrado de IP se aplican a un contenedor. Cualquier solicitud entrante al contenedor se evalúa en función de estas reglas. Si se le asigna el valor Disabled, todas las solicitudes entrantes podrán acceder al contenedor.

    • RANGE_CIDR es un intervalo de direcciones IPv4 o IPv6 de una red pública que tiene permiso para acceder al segmento. Puedes introducir uno o varios intervalos de direcciones en forma de lista.

    • PROJECT_ID es el ID del proyecto en el que se encuentra 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_NAME es 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_VPCS es un valor booleano que indica si se permiten las redes de VPC definidas en vpcNetworkSources que proceden de otra organización. Este campo es opcional. Si se define como true, la solicitud permite redes de VPC entre organizaciones. Si se define como false, la solicitud restringe las redes de VPC a la misma organización que el cubo. Si no se especifica ningún valor, se utiliza false de forma predeterminada. Este campo solo se aplica si vpcNetworkSources no está vacío.

    • ALLOW_ALL_SERVICE_AGENT_ACCESS es un valor booleano que indica si se permite que los agentes de servicio accedan al segmento, independientemente de la configuración del filtro de IP. Si el valor es true, otros Google Cloud servicios pueden usar agentes de servicio para acceder al segmento sin validación basada en IP.

  4. Para actualizar las reglas de filtrado por IP de un segmento, ejecuta el comando gcloud alpha storage buckets update en tu entorno de desarrollo:

    gcloud alpha storage buckets update gs://BUCKET_NAME --ip-filter-file=IP_FILTER_CONFIG_FILE

    Donde:

    • BUCKET_NAME es el nombre de tu segmento. Por ejemplo, my-bucket.
    • IP_FILTER_CONFIG_FILE es el archivo JSON creado en el paso anterior.

APIs REST

API JSON

  1. Tener instalada e inicializadala CLI de gcloud, que te permite generar un token de acceso para el encabezado Authorization.

  2. Crea un archivo JSON que contenga los ajustes del segmento, que debe incluir los campos de configuración name y ipFilter del segmento. Para ver ejemplos e información sobre cómo estructurar las reglas de filtrado por IP de los contenedores, consulta Configuraciones de filtrado por IP de los contenedores.

    {
      "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
      }
    }

    Donde:

    • MODE es el estado de la configuración del filtro de IP. Los valores válidos son Enabled y Disabled. Si se le asigna el valor Enabled, las reglas de filtrado de IP se aplican a un contenedor y todas las solicitudes entrantes al contenedor se evalúan en función de estas reglas. Si se define como Disabled, todas las solicitudes entrantes podrán acceder al contenedor y a sus datos sin ninguna evaluación.

    • RANGE_CIDR es un intervalo de direcciones IPv4 o IPv6 de una red pública que tiene permiso para acceder al segmento. Puedes introducir uno o varios intervalos de direcciones en forma de lista.

    • PROJECT_ID es el ID del proyecto en el que se encuentra la red de VPC. Para configurar varias redes de VPC, debes especificar el proyecto en el que se encuentra cada red.

    • NETWORK_NAME es 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_ACCESS es 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 es true, otros Google Cloud servicios pueden usar agentes de servicio para acceder al segmento sin validación basada en IP.

    • ALLOW_CROSS_ORG_VPCS es un valor booleano que indica si se permite que las redes de VPC definidas en la lista vpcNetworkSources procedan de otra organización. Este campo es opcional. Si se define como true, la solicitud permite redes de VPC entre organizaciones. Si se define como false, la solicitud restringe las redes de VPC a la misma organización que el cubo. Si no se especifica ningún valor, se utiliza false de forma predeterminada. Este campo solo se aplica si vpcNetworkSources no está vacío.

  3. Usa cURL para llamar a la API JSON con una solicitud PATCH bucket:

    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"

    Donde:

    • JSON_FILE_NAME es el nombre del archivo JSON que has creado en el paso anterior.
    • BUCKET_NAME es el nombre de tu segmento.
    • PROJECT_IDENTIFIER es el ID o el número del proyecto al que está asociado tu contenedor. Por ejemplo, my-project.

Siguientes pasos

Pruébalo

Si es la primera vez que utilizas Google Cloud, crea una cuenta para evaluar el rendimiento de Cloud Storage en situaciones reales. Los nuevos clientes también reciben 300 USD en crédito gratuito para ejecutar, probar y desplegar cargas de trabajo.

Probar Cloud Storage gratis