IP-Filterregeln für einen vorhandenen Bucket erstellen oder aktualisieren

Auf dieser Seite wird gezeigt, wie Sie IP-Filterregeln für Buckets für einen vorhandenen Bucket erstellen oder aktualisieren.

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die Rolle „Storage Admin“ (roles/storage.admin) für einen Bucket zuzuweisen, damit Sie die erforderlichen Berechtigungen zum Aktualisieren der IP-Filterregeln für den Bucket haben. Diese Rolle enthält die Berechtigungen, die zum Aktualisieren von IP-Filterregeln für Buckets erforderlich sind.

Maximieren Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen im Detail anzuzeigen:

Erforderliche Berechtigungen

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

Diese Berechtigungen können Ihnen auch mit benutzerdefinierten Rollen sowie mit anderen vordefinierten Rollen gewährt werden. Informationen dazu, welche Rollen mit welchen Berechtigungen verknüpft sind, finden Sie unter IAM-Rollen für Cloud Storage.

Eine Anleitung zur Zuweisung von Rollen für Projekte finden Sie unter IAM-Richtlinien für Buckets festlegen und verwalten.

IP-Filterregeln für einen vorhandenen Bucket erstellen oder aktualisieren

gcloud

  1. Prüfen Sie, ob die Google Cloud CLI-Version 526.0.0 oder höher installiert ist:

    gcloud version | head -n1
    
  2. Wenn Sie eine ältere gcloud CLI-Version installiert haben, aktualisieren Sie die Version:

    gcloud components update --version=526.0.0
    
  3. Erstellen Sie eine JSON-Datei, in der Regeln für eingehende Anfragen definiert sind. Beispiele und Informationen zum Strukturieren der Bucket-IP-Filterregeln finden Sie unter Konfigurationen für die IP-Filterung von Buckets.

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

    Dabei gilt:

    • MODE ist der Modus der Bucket-IP-Filterkonfiguration. Gültige Werte sind Enabled und Disabled. Wenn für den Modus Enabled festgelegt ist, werden IP-Filterregeln auf einen Bucket angewendet. Jede eingehende Anfrage an den Bucket wird anhand dieser Regeln ausgewertet. Wenn Disabled festgelegt ist, dürfen alle eingehenden Anfragen auf den Bucket zugreifen.

    • RANGE_CIDR ist ein öffentlicher IPv4- oder IPv6-Adressbereich, mit dem auf den Bucket zugegriffen werden darf. Sie können einen oder mehrere Adressbereiche als Liste eingeben.

    • PROJECT_ID ist die ID des Projekts, in der das VPC-Netzwerk (Virtual Private Cloud) vorhanden ist. Wenn Sie mehrere VPC-Netzwerke konfigurieren möchten, müssen Sie das Projekt angeben, in dem sich das jeweilige Netzwerk befindet.

    • NETWORK_NAME ist der Name des VPC-Netzwerks, das auf den Bucket zugreifen darf. Wenn Sie mehrere VPC-Netzwerke konfigurieren möchten, müssen Sie für jedes Netzwerk einen eigenen Namen angeben.

    • ALLOW_CROSS_ORG_VPCS ist ein boolescher Wert, der angibt, ob VPC-Netzwerke, die in vpcNetworkSources definiert sind, aus einer anderen Organisation stammen dürfen. Dieses Feld ist optional. Wenn für den booleschen Wert true festgelegt ist, sind organisationsübergreifende VPC-Netzwerke zulässig. Wenn dafür false festgelegt ist, werden die VPC-Netzwerke in der Anfrage auf die Organisation des Buckets beschränkt. Ohne explizite Angabe beträgt der Standardwert false. Dieses Feld gilt nur, wenn vpcNetworkSources nicht leer ist.

    • ALLOW_ALL_SERVICE_AGENT_ACCESS ist ein boolescher Wert, der angibt, ob Dienst-Agents unabhängig von der IP-Filterkonfiguration auf den Bucket zugreifen dürfen. Wenn für den booleschen Wert true festgelegt ist, können andere Dienste von Google Cloud mit Dienst-Agents ohne IP-basierte Validierung auf den Bucket zugreifen.

  4. Führen Sie den Befehl gcloud alpha storage buckets update in Ihrer Entwicklungsumgebung aus, um die IP-Filterregeln für den Bucket zu aktualisieren:

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

    Dabei gilt:

    • BUCKET_NAME ist der Name des Buckets. Beispiel: my-bucket.
    • IP_FILTER_CONFIG_FILE ist die JSON-Datei, die im vorherigen Schritt erstellt wurde.

REST APIs

JSON API

  1. Installieren und initialisieren Sie die gcloud CLI, um ein Zugriffstoken für den Authorization-Header zu generieren.

  2. Erstellen Sie eine JSON-Datei mit den Einstellungen für den Bucket, die die Konfigurationsfelder name und ipFilter für den Bucket enthalten muss. Beispiele und Informationen zum Strukturieren von Bucket-IP-Filterungsregeln finden Sie unter Konfigurationen für die IP-Filterung von Buckets.

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

    Dabei gilt:

    • MODE ist der Status der IP-Filterkonfiguration. Gültige Werte sind Enabled und Disabled. Wenn für den Modus Enabled festgelegt ist, werden IP-Filterregeln auf einen Bucket angewendet und alle eingehenden Anfragen an den Bucket werden anhand dieser Regeln ausgewertet. Wenn dafür Disabled festgelegt ist, können alle eingehenden Anfragen ohne Auswertung auf den Bucket und seine Daten zugreifen.

    • RANGE_CIDR ist ein öffentlicher IPv4- oder IPv6-Adressbereich, der auf den Bucket zugreifen darf. Sie können einen oder mehrere Adressbereiche als Liste eingeben.

    • PROJECT_ID ist die ID des Projekts, in der das VPC-Netzwerk vorhanden ist. Wenn Sie mehrere VPC-Netzwerke konfigurieren möchten, müssen Sie das Projekt angeben, in dem sich das jeweilige Netzwerk befindet.

    • NETWORK_NAME ist der Name des VPC-Netzwerks, das auf den Bucket zugreifen darf. Wenn Sie mehrere VPC-Netzwerke konfigurieren möchten, müssen Sie für jedes Netzwerk einen eigenen Namen angeben.

    • ALLOW_ALL_SERVICE_AGENT_ACCESS ist ein boolescher Wert, der angibt, ob Dienst-Agents unabhängig von der IP-Filterkonfiguration auf den Bucket zugreifen dürfen. Wenn für den booleschen Wert true festgelegt ist, können andere Dienste von Google Cloud mit Dienst-Agents ohne IP-basierte Validierung auf den Bucket zugreifen.

    • ALLOW_CROSS_ORG_VPCS ist ein boolescher Wert, der angibt, ob VPC-Netzwerke, die in der vpcNetworkSources-Liste definiert sind, aus einer anderen Organisation stammen dürfen. Dieses Feld ist optional. Wenn für den booleschen Wert true festgelegt ist, sind organisationsübergreifende VPC-Netzwerke zulässig. Wenn dafür false festgelegt ist, werden die VPC-Netzwerke in der Anfrage auf die Organisation des Buckets beschränkt. Ohne explizite Angabe beträgt der Standardwert false. Dieses Feld gilt nur, wenn vpcNetworkSources nicht leer ist.

  3. Verwenden Sie cURL, um die JSON API mit einer PATCH-Bucket-Anfrage aufzurufen:

    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"

    Dabei gilt:

    • JSON_FILE_NAME ist der Name der JSON-Datei, die Sie im vorherigen Schritt erstellt haben.
    • BUCKET_NAME ist der Name des Buckets.
    • PROJECT_IDENTIFIER ist die ID oder Nummer des Projekts, mit dem Ihr Bucket verknüpft ist. Beispiel: my-project

Nächste Schritte

Überzeugen Sie sich selbst

Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um sich von der Leistungsfähigkeit von Cloud Storage in der Praxis zu überzeugen. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.

Cloud Storage kostenlos testen