Neue und bestehende Instanzen für die Authentifizierung der IAM-Datenbanken konfigurieren

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

Auf dieser Seite finden Sie Verfahren zum Erstellen oder Bearbeiten von Cloud SQL-Instanzen, um Nutzern oder Dienstkonten zuzulassen, die für die Verwendung der Cloud SQL-IAM-Datenbankauthentifizierung konfiguriert sind. Weitere Informationen zur Cloud SQL-IAM-Integration finden Sie unter Cloud SQL-IAM-Datenbankauthentifizierung.

Eine neu erstellte Instanz hat eine postgres-Datenbank.

Hinweis

  1. Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte 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.
  2. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  3. Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.

  4. Installieren und initialisieren Sie Google Cloud CLI.
  5. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  6. Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.

  7. Installieren und initialisieren Sie Google Cloud CLI.
  8. Achten Sie darauf, dass Sie für Ihr Nutzerkonto die Rollen "Cloud SQL-Administrator" und "Compute-Betrachter" haben.

    Zur IAM-Seite

    Weitere Informationen zu Rollen und Berechtigungen

Neue Instanzen für die IAM-Datenbankauthentifizierung konfigurieren

Cloud SQL verwendet ein Flag, um IAM-Nutzerverbindungen auf einer Instanz zu aktivieren und zu deaktivieren. In diesem Verfahren aktivieren Sie dieses Flag.

So konfigurieren Sie eine neue Instanz, die die Cloud SQL-IAM-Datenbankauthentifizierung verwendet:

Console

  1. Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen.

    Cloud SQL-Instanzen aufrufen

  2. Klicken Sie auf Instanz erstellen.
  3. Klicken Sie auf PostgreSQL auswählen.
  4. Geben Sie einen Namen für die Instanz-ID ein. Der Instanzname sollte keine vertraulichen oder personenbezogenen Informationen enthalten. Er ist extern sichtbar. Die Projekt-ID muss im Instanznamen nicht angegeben werden. Die Projekt-ID wird an gegebener Stelle automatisch eingefügt, z. B. in den Logdateien.
  5. Geben Sie ein Passwort für den Standardadministrator ein.
  6. Wählen Sie im Drop-down-Menü Datenbankversion eine Datenbankversion aus.
  7. Wählen Sie im Abschnitt Region und zonale Verfügbarkeit auswählen die Region und die Zone für Ihre Instanz aus. Platzieren Sie die Instanz in der Region, in der sich auch die Ressourcen befinden, die darauf zugreifen. Die ausgewählte Region kann später nicht mehr geändert werden. Normalerweise müssen Sie keine Zone angeben.
  8. Klicken Sie im Abschnitt Instanz anpassen auf Konfigurationsoptionen einblenden und maximieren Sie Flags.
  9. Klicken Sie auf Flag hinzufügen.
  10. Wählen Sie im Drop-down-Menü Flag auswählen das Flag cloudsql.iam_authentication aus. Achten Sie darauf, dass An als Wert für dieses Flag ausgewählt ist, und klicken Sie dann auf Fertig.
  11. Konfigurieren Sie bei Bedarf weitere Instanzeinstellungen. Weitere Informationen zu Einstellungen finden Sie unter Einstellungen.
  12. Klicken Sie auf Instanz erstellen.

gcloud

Führen Sie gcloud sql instances create aus und setzen Sie den Parameter -database-flags auf cloudsql.iam_authentication=on.

Dabei gilt:

  • INSTANCE_NAME: der Name der neuen Instanz.
  • POSTGRES_VERSION: die PosgreSQL-Version (z. B. POSTGRES_9_6, POSTGRES_10, POSTGRES_11 oder POSTGRES_12).
  • NUMBER_OF_CORES: die Anzahl der Kerne in der Maschine.
  • AMOUNT_OF_MEMORY: die Größe des Arbeitsspeichers in der Maschine. Es sollte eine Größen angegeben werden (z. B. 3072MiB oder 9GiB).
  • ZONE: bevorzugte Compute Engine-Zone, z. B. us-central1-a oder us-central1-b.
  • PASSWORD: von Ihnen erstelltes Passwort für den Root-Nutzer.
gcloud sql instances create INSTANCE_NAME \
--database-version=POSTGRES_VERSION \
--cpu=NUMBER_OF_CORES \
--memory=AMOUNT_OF_MEMORY \
--zone=ZONE_NAME \
--root-password=PASSWORD \
--database-flags=cloudsql.iam_authentication=on

REST v1beta4

Der Instanzname sollte keine vertraulichen Informationen oder personenbezogenen Daten enthalten, da er extern sichtbar ist.

Die Projekt-ID muss im Instanznamen nicht angegeben werden. Die Projekt-ID wird an gegebener Stelle automatisch eingefügt, z. B. in den Logdateien.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • instance-id: die gewünschte Instanz-ID
  • region: die gewünschte Region, z. B. us-east-1
  • project-id: Ihre Projekt-ID
  • location-id: die Standort-ID
  • database-version: Enum-String der Datenbankversion Beispiel: POSTGRES_12
  • password: das Passwort für den Root-Nutzer
  • machine-type: Enum-String des Maschinentyps (Stufe), z. B.: db-custom-[CPUS]-[MEMORY_MBS]

HTTP-Methode und URL:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/locations/location-id/instances

JSON-Text anfordern:

{
  "name": "instance-id",
  "region": "region",
  "databaseVersion": "database-version",
  "rootPassword": "password",
  "settings": {
    "tier": "machine-type",
    "backupConfiguration": {
      "enabled": true
    },
    "databaseFlags": [
      {
        "name": "cloudsql.iam_authentication",
        "value": "on"
      }
    ]
  }
}

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-01T19:13:21.834Z",
  "operationType": "CREATE",
  "name": "operation-id",
  "targetId": "instance-id",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/operations/operation-id",
  "targetProject": "project-id"
}
Informationen zum Aufbau der zugrunde liegenden REST API-Anfrage für diese Aufgabe finden Sie im APIs Explorer auf der Seite instances:insert.

Vorhandene Instanzen für die Cloud SQL-IAM-Datenbankauthentifizierung konfigurieren

So konfigurieren Sie die IAM-Datenbankauthentifizierung für eine vorhandene Instanz:

Console

  1. Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen.

    Cloud SQL-Instanzen aufrufen

  2. Klicken Sie auf den Instanznamen, um die Übersichtsseite einer Instanz zu öffnen.
  3. Klicken Sie auf Bearbeiten.
  4. Maximieren Sie im Bereich Instanz anpassen den Eintrag Flags.
  5. Klicken Sie auf Flag hinzufügen.
  6. Wählen Sie im Drop-down-Menü Flag auswählen das Flag cloudsql.iam_authentication aus. Achten Sie darauf, dass An als Wert für dieses Flag ausgewählt ist, und klicken Sie dann auf Fertig.
  7. Konfigurieren Sie bei Bedarf weitere Instanzeinstellungen. Weitere Informationen zu Einstellungen finden Sie unter Einstellungen.
  8. Klicken Sie auf Speichern.

gcloud

Informationen zur Installation des gcloud-Befehlszeilentools und zu ersten Schritten mit dem Tool finden Sie unter [gcloud CLI installieren](/sdk/docs/install). Informationen zum Starten von Cloud Shell finden Sie in der Cloud Shell-Dokumentation.

Verwenden Sie für dieses Verfahren gcloud sql instances patch.

Dabei gilt:

  • INSTANCE_NAME: der Name der neuen Instanz.
gcloud sql instances patch INSTANCE_NAME \
--database-flags=cloudsql.iam_authentication=on

Dadurch werden alle anderen vorhandenen Flag-Einstellungen der Datenbank zurückgesetzt. Weitere Informationen zum Festlegen von Datenbank-Flags finden Sie unter Datenbank-Flag festlegen.

REST v1beta4

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • project-id: Ihre Projekt-ID
  • location-id: die Standort-ID
  • instance-id: die gewünschte Instanz-ID
  • region: die gewünschte Region
  • database-version: Enum-String der Datenbankversion Beispiel: POSTGRES_12
  • password: das Passwort für den Root-Nutzer
  • machine-type: Enum-String des Maschinentyps (Stufe), z. B.: db-custom-[CPUS]-[MEMORY_MBS]

HTTP-Methode und URL:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/locations/location-id/instances

JSON-Text anfordern:

{
  "name": "instance-id",
  "region": "region",
  "databaseVersion": "database-version",
  "rootPassword": "password",
  "settings": {
    "tier": "machine-type",
    "backupConfiguration": {
      "enabled": true
    }
    "databaseFlags":
    [
      {
        "name": "cloudsql.iam_authentication",
        "value": "on"
      }
    ]
  }
}

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-01T19:13:21.834Z",
  "operationType": "CREATE",
  "name": "operation-id",
  "targetId": "instance-id",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/operations/operation-id",
  "targetProject": "project-id"
}

Nächste Schritte