Auf dieser Seite wird beschrieben, wie Sie die Regeln für die IP-Filterung für Buckets für einen vorhandenen Bucket erstellen oder aktualisieren.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die Rolle „Storage-Administrator“ (roles/storage.admin
) für den Bucket zuzuweisen, um die erforderlichen Berechtigungen zum Aktualisieren der IP-Filterregeln für einen Bucket zu erhalten. Diese Rolle enthält die Berechtigungen, die zum Aktualisieren von IP-Filterregeln für Buckets erforderlich sind.
Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
storage.buckets.update
storage.buckets.setIpFilter
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen erhalten. Sie können diese Berechtigungen möglicherweise auch mit anderen vordefinierten Rollen erhalten. Informationen dazu, welche Rollen mit welchen Berechtigungen verknüpft sind, finden Sie unter IAM-Rollen für Cloud Storage.
Eine Anleitung zum Zuweisen von Rollen für Projekte finden Sie unter Zugriff auf Projekte verwalten.
IP-Filterregeln für einen vorhandenen Bucket erstellen oder aktualisieren
gcloud
Prüfen Sie, ob Sie die Google Cloud CLI-Version 526.0.0 oder höher installiert haben:
gcloud version | head -n1
Wenn Sie eine ältere Version der gcloud CLI installiert haben, aktualisieren Sie die Version:
gcloud components update --version=526.0.0
Erstellen Sie eine JSON-Datei, die Regeln für eingehende Anfragen definiert. Beispiele und Informationen zum Strukturieren der Regeln für die Bucket-IP-Filterung finden Sie unter Konfigurationen für die Bucket-IP-Filterung.
{ "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 }
Wobei:
MODE
ist der Modus der Bucket-IP-Filterkonfiguration. Gültige Werte sindEnabled
undDisabled
. Wenn der Wert aufEnabled
festgelegt ist, werden IP-Filterregeln auf einen Bucket angewendet. Jede eingehende Anfrage an den Bucket wird anhand dieser Regeln ausgewertet. WennDisabled
festgelegt ist, dürfen alle eingehenden Anfragen auf den Bucket 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 Projekt-ID, in der sich das VPC-Netzwerk (Virtual Private Cloud) befindet. Wenn Sie mehrere VPC-Netzwerke konfigurieren möchten, müssen Sie das Projekt angeben, in dem sich jedes Netzwerk befindet.NETWORK_NAME
ist der Name des VPC-Netzwerk, das auf den Bucket zugreifen darf. Wenn Sie mehrere VPC-Netzwerke konfigurieren möchten, müssen Sie für jedes Netzwerk einen Namen angeben.ALLOW_CROSS_ORG_VPCS
ist ein boolescher Wert, der angibt, ob VPC-Netzwerke, die invpcNetworkSources
definiert sind, aus einer anderen Organisation stammen dürfen. Dieses Feld ist optional. Wenn der Wert auftrue
gesetzt ist, sind organisationsübergreifende VPC-Netzwerke in der Anfrage zulässig. Wenn der Wert auffalse
gesetzt ist, werden die VPC-Netzwerke in der Anfrage auf dieselbe Organisation wie der Bucket beschränkt. Wenn keine Angabe erfolgt, beträgt der Standardwertfalse
.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 der Werttrue
ist, können andere Google Cloud Dienste Dienst-Agents verwenden, um ohne IP-basierte Validierung auf den Bucket zuzugreifen.
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
Wobei:
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
Die gcloud CLI installieren und initialisieren, um ein Zugriffstoken für den Header
Authorization
zu generieren.Erstellen Sie eine JSON-Datei mit den Einstellungen für den Bucket, die die Konfigurationsfelder
name
undipFilter
für den Bucket enthalten muss. Beispiele und Informationen zum Strukturieren der Bucket-IP-Filterregeln finden Sie unter Bucket-IP-Filterkonfigurationen.{ "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 } }
Wobei:
MODE
ist der Status der IP-Filterkonfiguration. Gültige Werte sindEnabled
undDisabled
. Wenn diese Option aufEnabled
festgelegt ist, werden IP-Filterregeln auf einen Bucket angewendet und alle eingehenden Anfragen an den Bucket werden anhand dieser Regeln ausgewertet. Wenn der Wert aufDisabled
gesetzt ist, kann auf alle eingehenden Anfragen ohne Auswertung auf den Bucket und seine Daten zugegriffen werden.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 Projekt-ID, in der das VPC-Netzwerk vorhanden ist. Wenn Sie mehrere VPC-Netzwerke konfigurieren möchten, müssen Sie das Projekt angeben, in dem sich jedes Netzwerk befindet.NETWORK_NAME
ist der Name des VPC-Netzwerk, das auf den Bucket zugreifen darf. Wenn Sie mehrere VPC-Netzwerke konfigurieren möchten, müssen Sie für jedes Netzwerk einen Namen angeben.ALLOW_ALL_SERVICE_AGENT_ACCESS
ist ein boolescher Wert, der angibt, ob Dienstkonten unabhängig von der IP-Filterkonfiguration auf den Bucket zugreifen dürfen. Wenn der Werttrue
ist, können andere Google Cloud Dienste Dienst-Agents verwenden, um ohne IP-basierte Validierung auf den Bucket zuzugreifen.ALLOW_CROSS_ORG_VPCS
ist ein boolescher Wert, der angibt, ob VPC-Netzwerke, die in der ListevpcNetworkSources
definiert sind, aus einer anderen Organisation stammen dürfen. Dieses Feld ist optional. Wenn der Wert auftrue
gesetzt ist, sind organisationsübergreifende VPC-Netzwerke in der Anfrage zulässig. Wenn der Wert auffalse
gesetzt ist, werden die VPC-Netzwerke im Antrag auf dieselbe Organisation wie der Bucket beschränkt. Wenn keine Angabe erfolgt, beträgt der Standardwertfalse
.
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"
Wobei:
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 die Leistungsfähigkeit von Cloud Storage in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
Cloud Storage kostenlos testen