Auf dieser Seite wird gezeigt, wie Sie mithilfe der Einstellungen für autorisierte Netzwerke eine Verbindung zu Cloud SQL-Instanzen herstellen, die IP-Adressen verwenden.
Autorisierte Netzwerke konfigurieren
Die IP-Adresse oder der Adressbereich Ihrer Clientanwendung muss für die folgenden Szenarien als authorized networks
konfiguriert sein:
- Die Clientanwendung stellt über ihre öffentliche IP-Adresse eine direkte Verbindung zu einer Cloud SQL-Instanz her.
- Ihre Clientanwendung stellt eine direkte Verbindung zu einer Cloud SQL-Instanz über ihre private IP-Adresse her und die IP-Adresse Ihres Clients ist eine Adresse außerhalb des RFC 1918-Bereichs.
Die IP-Adresse kann entweder ein einzelner Endpunkt oder ein Bereich in CIDR-Notation sein.
Console
-
Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen.
- Klicken Sie auf den Instanznamen, um die Seite Übersicht einer Instanz zu öffnen.
- Wählen Sie im SQL-Navigationsmenü die Option Verbindungen aus.
- Klicken Sie auf den Tab Netzwerk.
- Wählen Sie das Kästchen Öffentliche IP-Adressen aus.
- Klicken Sie auf Netzwerk hinzufügen.
- Geben Sie im Feld Name einen Namen für Neues Netzwerk ein.
- Geben Sie im Feld Netzwerk die öffentliche IPv4-Adresse oder den Adressbereich ein, von dem aus Sie Verbindungen zulassen möchten.
Für den Adressbereich müssen Sie eine gültige CIDR-Notation verwenden (z. B. 10.10.10.0/24).
- Klicken Sie auf Fertig.
- Klicken Sie auf Speichern.
gcloud
Die Konfiguration autorisierter Netzwerke ersetzt die vorhandene Liste autorisierter Netzwerke.
gcloud sql instances patch INSTANCE_ID \ --authorized-networks=NETWORK_RANGE_1,NETWORK_RANGE_2...
Terraform
Verwenden Sie eine Terraform-Ressource, um autorisierte Netzwerke zu konfigurieren.
Änderungen anwenden
Führen Sie die Schritte in den folgenden Abschnitten aus, um Ihre Terraform-Konfiguration auf ein Google Cloud-Projekt anzuwenden.
Cloud Shell vorbereiten
- Rufen Sie Cloud Shell auf.
-
Legen Sie das Google Cloud-Standardprojekt fest, auf das Sie Ihre Terraform-Konfigurationen anwenden möchten.
Sie müssen diesen Befehl nur einmal pro Projekt und in jedem beliebigen Verzeichnis ausführen.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Umgebungsvariablen werden überschrieben, wenn Sie in der Terraform-Konfigurationsdatei explizite Werte festlegen.
Verzeichnis vorbereiten
Jede Terraform-Konfigurationsdatei muss ein eigenes Verzeichnis haben (auch als Stammmodul bezeichnet).
-
Erstellen Sie in Cloud Shell ein Verzeichnis und eine neue Datei in diesem Verzeichnis. Der Dateiname muss die Erweiterung
.tf
haben, z. B.main.tf
. In dieser Anleitung wird die Datei alsmain.tf
bezeichnet.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Wenn Sie einer Anleitung folgen, können Sie den Beispielcode in jedem Abschnitt oder Schritt kopieren.
Kopieren Sie den Beispielcode in das neu erstellte
main.tf
.Kopieren Sie optional den Code aus GitHub. Dies wird empfohlen, wenn das Terraform-Snippet Teil einer End-to-End-Lösung ist.
- Prüfen und ändern Sie die Beispielparameter, die auf Ihre Umgebung angewendet werden sollen.
- Speichern Sie die Änderungen.
-
Initialisieren Sie Terraform. Dies ist nur einmal für jedes Verzeichnis erforderlich.
terraform init
Fügen Sie optional die Option
-upgrade
ein, um die neueste Google-Anbieterversion zu verwenden:terraform init -upgrade
Änderungen anwenden
-
Prüfen Sie die Konfiguration und prüfen Sie, ob die Ressourcen, die Terraform erstellen oder aktualisieren wird, Ihren Erwartungen entsprechen:
terraform plan
Korrigieren Sie die Konfiguration nach Bedarf.
-
Wenden Sie die Terraform-Konfiguration an. Führen Sie dazu den folgenden Befehl aus und geben Sie
yes
an der Eingabeaufforderung ein:terraform apply
Warten Sie, bis Terraform die Meldung „Apply complete“ anzeigt.
- Öffnen Sie Ihr Google Cloud-Projekt, um die Ergebnisse aufzurufen. Rufen Sie in der Google Cloud Console Ihre Ressourcen in der Benutzeroberfläche auf, um sicherzustellen, dass Terraform sie erstellt oder aktualisiert hat.
Änderungen löschen
So löschen Sie das Projekt:
- Um den Löschschutz zu deaktivieren, setzen Sie in der Terraform-Konfigurationsdatei das Argument
deletion_protection
auffalse
.deletion_protection = "false"
- Wenden Sie die aktualisierte Terraform-Konfiguration an. Führen Sie dazu den folgenden Befehl aus und geben Sie
yes
an der Eingabeaufforderung ein:terraform apply
-
Entfernen Sie Ressourcen, die zuvor mit Ihrer Terraform-Konfiguration angewendet wurden, indem Sie den folgenden Befehl ausführen und
yes
an der Eingabeaufforderung eingeben:terraform destroy
REST Version 1
Die Konfiguration autorisierter Netzwerke ersetzt die vorhandene Liste autorisierter Netzwerke.
Ersetzen Sie dabei folgende Werte für die Anfragedaten:
- project-id: die Projekt-ID
- instance-id: die Instanz-ID
- network_range_1: eine autorisierte IP-Adresse oder ein autorisierter IP-Bereich
- network_range_2: eine weitere autorisierte IP-Adresse oder ein weiterer autorisierter IP-Bereich
HTTP-Methode und URL:
PATCH https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id
JSON-Text anfordern:
{ "settings": { "ipConfiguration": { "authorizedNetworks": [{"value": "network_range_1"}, {"value": "network_range_2"}] } } }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten in etwa folgende JSON-Antwort erhalten:
REST v1beta4
Die Konfiguration autorisierter Netzwerke ersetzt die vorhandene Liste autorisierter Netzwerke.
Ersetzen Sie dabei folgende Werte für die Anfragedaten:
- project-id: die Projekt-ID
- instance-id: die Instanz-ID
- network_range_1: eine autorisierte IP-Adresse oder ein autorisierter IP-Bereich
- network_range_2: eine weitere autorisierte IP-Adresse oder ein weiterer autorisierter IP-Bereich
HTTP-Methode und URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id
JSON-Text anfordern:
{ "settings": { "ipConfiguration": { "authorizedNetworks": [{"value": "network_range_1"}, {"value": "network_range_2"}] } } }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten in etwa folgende JSON-Antwort erhalten:
Beschränkungen
Einige IP-Adressbereiche können nicht als autorisierte Netzwerke hinzugefügt werden.
Adressbereich | Hinweise |
---|---|
10.0.0.0/8 | RFC 1918-Adressbereich. Diese Adressen werden von Cloud SQL automatisch und implizit in die autorisierten Netzwerke aufgenommen. |
172.16.0.0/12 | RFC 1918-Adressbereich. Diese Adressen werden von Cloud SQL automatisch und implizit in die autorisierten Netzwerke aufgenommen. |
192.168.0.0/16 | RFC 1918-Adressbereich. Diese Adressen werden von Cloud SQL automatisch und implizit in die autorisierten Netzwerke aufgenommen. |
Nächste Schritte
Mehr über die Instanzzugriffssteuerung erfahren
SSL/TLS-Verbindung zu Ihrer Instanz über den sqlcmd-Client herstellen