Creare o aggiornare le regole di filtro IP in un bucket esistente

Questa pagina descrive come creare o aggiornare le regole di filtraggio IP del bucket in un bucket esistente.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per aggiornare le regole di filtro IP su un bucket, chiedi all'amministratore di concederti il ruolo Amministratore Storage (roles/storage.admin) sul bucket. Questo ruolo contiene le autorizzazioni necessarie per aggiornare le regole di filtro IP del bucket.

Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

  • storage.buckets.update
  • storage.buckets.setIpFilter

Puoi anche ottenere queste autorizzazioni con ruoli personalizzati. Potresti anche riuscire a ottenere queste autorizzazioni con altri ruoli predefiniti. Per vedere quali ruoli sono associati a quali autorizzazioni, consulta la pagina Ruoli IAM per Cloud Storage.

Per istruzioni sulla concessione dei ruoli per i progetti, consulta Gestire l'accesso ai progetti.

Crea o aggiorna le regole di filtro IP in un bucket esistente

gcloud

  1. Verifica di aver installato Google Cloud CLI versione 526.0.0 o successiva:

    gcloud version | head -n1
    
  2. Se hai installato una versione precedente di gcloud CLI, aggiornala:

    gcloud components update --version=526.0.0
    
  3. Crea un file JSON che definisca le regole per le richieste in entrata. Per esempi e informazioni su come strutturare le regole di filtro IP dei bucket, consulta Configurazioni del filtro IP dei 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
        }
        

    Dove:

    • MODE è la modalità di configurazione del filtro IP del bucket. I valori validi sono Enabled e Disabled. Se impostato su Enabled, le regole di filtro IP vengono applicate a un bucket. Qualsiasi richiesta in entrata al bucket viene valutata in base a queste regole. Se impostato su Disabled, tutte le richieste in entrata possono accedere al bucket.

    • RANGE_CIDR è un intervallo di indirizzi IPv4 o IPv6 di rete pubblica autorizzato ad accedere al bucket. Puoi inserire uno o più intervalli di indirizzi come elenco.

    • PROJECT_ID è l'ID progetto in cui esiste la rete Virtual Private Cloud (VPC). Per configurare più reti VPC, devi specificare il progetto in cui si trova ciascuna rete.

    • NETWORK_NAME è il nome della rete VPC autorizzata ad accedere al bucket. Per configurare più reti VPC, devi specificare un nome per ciascuna rete.

    • ALLOW_CROSS_ORG_VPCS è un valore booleano che indica se consentire alle reti VPC definite in vpcNetworkSources di provenire da un'organizzazione diversa. Questo campo è facoltativo. Se impostato su true, la richiesta consente reti VPC tra organizzazioni. Se impostato su false, la richiesta limita le reti VPC alla stessa organizzazione del bucket. Se non è specificato, il valore predefinito è false.

    • ALLOW_ALL_SERVICE_AGENT_ACCESS è un valore booleano che indica se consentire agli agenti di servizio di accedere al bucket, indipendentemente dalla configurazione del filtro IP. Se il valore è true, altri servizi Google Cloud possono utilizzare agenti di servizio per accedere al bucket senza la convalida basata su IP.

  4. Per aggiornare le regole di filtro IP del bucket, esegui il comando gcloud alpha storage buckets update nel tuo ambiente di sviluppo:

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

    Dove:

    • BUCKET_NAME è il nome del tuo bucket. Ad esempio, my-bucket.
    • IP_FILTER_CONFIG_FILE è il file JSON creato nel passaggio precedente.

API REST

API JSON

  1. Avere la gcloud CLI installata e inizializzata, che ti consente di generare un token di accesso per l'intestazione Authorization.

  2. Crea un file JSON contenente le impostazioni del bucket, che deve includere i campi di configurazione name e ipFilter per il bucket. Per esempi e informazioni su come strutturare le regole di filtro IP dei bucket, vedi Configurazioni del filtro IP dei 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
      }
    }

    Dove:

    • MODE è lo stato della configurazione del filtro IP. I valori validi sono Enabled e Disabled. Se impostato su Enabled, le regole di filtro IP vengono applicate a un bucket e tutte le richieste in entrata al bucket vengono valutate in base a queste regole. Se impostato su Disabled, tutte le richieste in entrata possono accedere al bucket e ai relativi dati senza alcuna valutazione.

    • RANGE_CIDR è un intervallo di indirizzi IPv4 o IPv6 di rete pubblica autorizzato ad accedere al bucket. Puoi inserire uno o più intervalli di indirizzi come elenco.

    • PROJECT_ID è l'ID progetto in cui esiste la rete VPC. Per configurare più reti VPC, devi specificare il progetto in cui si trova ciascuna rete.

    • NETWORK_NAME è il nome della rete VPC autorizzata ad accedere al bucket. Per configurare più reti VPC, devi specificare un nome per ciascuna rete.

    • ALLOW_ALL_SERVICE_AGENT_ACCESS è un valore booleano che indica se consentire agli agenti di servizio di accedere al bucket, indipendentemente dalla configurazione del filtro IP. Se il valore è true, altri servizi Google Cloud possono utilizzare agenti di servizio per accedere al bucket senza la convalida basata su IP.

    • ALLOW_CROSS_ORG_VPCS è un valore booleano che indica se consentire alle reti VPC definite nell'elenco vpcNetworkSources di provenire da un'organizzazione diversa. Questo campo è facoltativo. Se impostato su true, la richiesta consente reti VPC tra organizzazioni diverse. Se impostato su false, la richiesta limita le reti VPC alla stessa organizzazione del bucket. Se non è specificato, il valore predefinito è false.

  3. Utilizza cURL per chiamare l'API JSON con una richiesta 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"

    Dove:

    • JSON_FILE_NAME è il nome del file JSON che hai creato nel passaggio precedente.
    • BUCKET_NAME è il nome del tuo bucket.
    • PROJECT_IDENTIFIER è l'ID o il numero del progetto a cui è associato il bucket. Ad esempio, my-project.

Passaggi successivi

Provalo

Se non conosci Google Cloud, crea un account per valutare le prestazioni di Cloud Storage in scenari reali. I nuovi clienti ricevono anche 300 $ di crediti senza addebiti per l'esecuzione, il test e il deployment dei workload.

Prova Cloud Storage gratuitamente