IAM-Authentifizierung

Google Cloud bietet Identity and Access Management (IAM), mit dem Sie den Zugriff auf bestimmte Google Cloud Ressourcen gewähren und unerwünschten Zugriff auf andere Ressourcen verhindern können. Auf dieser Seite wird beschrieben, wie Cloud SQL in IAM eingebunden ist und wie Sie IAM verwenden können, um den Zugriff auf Cloud SQL Ressourcen zu verwalten und die Datenbankauthentifizierung durchzuführen. Eine ausführliche Beschreibung von Google Cloud IAM finden Sie unter IAM-Dokumentation.

Cloud SQL bietet eine Reihe vordefinierter Rollen mit denen Sie den Zugriff auf Ihre Cloud SQL-Ressourcen steuern können. Sie können auch eigene benutzerdefinierte Rollen erstellen, wenn die vordefinierten Rollen keine Informationen zu den benötigten Gruppen von Berechtigungen enthalten. Zusätzlich stehen Ihnen die einfachen Legacy-Rollen (Bearbeiter, Betrachter und Inhaber) nach wie vor zur Verfügung. Sie bieten aber nicht die gleiche präzisen Steuerungsmöglichkeiten wie die Cloud SQL-Rollen. Insbesondere ermöglichen die einfachen Rollen Zugriff auf Ressourcen in insgesamt Google Cloud, und nicht nur für Cloud SQL. Weitere Informationen zu einfachen Google Cloud Rollen finden Sie unter Einfache Rollen.

Sie können eine IAM-Richtlinie auf jeder Ebene der Ressourcenhierarchiefestlegen: der Organisationsebene, der Ordnerebene oder der Projektebene. Ressourcen übernehmen die Richtlinien aller ihrer übergeordneten Ressourcen.

IAM-Referenzen für Cloud SQL

IAM-Authentifizierungskonzepte

Bei Verwendung der IAM-Authentifizierung wird dem Endnutzer die Berechtigung für den Zugriff auf eine Ressource (eine Cloud SQL-Instanz) nicht direkt gewährt. Stattdessen werden Berechtigungen in Rollen gruppiert, die dann Hauptkonten zugewiesen werden. Weitere Informationen finden Sie in der IAM-Übersicht.

Administratoren, bei denen sich Nutzer über die IAM-Datenbankauthentifizierung anmelden, können mit IAM die Zugriffssteuerung für ihre Instanzen zentral über IAM-Richtlinien verwalten.

IAM-Richtlinien umfassen die folgenden Entitäten:

  • Hauptkonten. In Cloud SQL können Sie verschiedene Arten von IAM-Hauptkonten verwenden: Nutzerkonto, Dienstkonto (für Anwendungen) oder Gruppe. Weitere Informationen finden Sie unter Identitätskonzepte.
  • Rollen: Eine Rolle ist eine Sammlung von Berechtigungen. Sie können Hauptkonten Rollen zuweisen, um ihnen die Berechtigungen zu gewähren, die für bestimmte Aufgaben erforderlich sind. Bei der IAM-Datenbankauthentifizierung benötigt ein Hauptkonto beispielsweise die Berechtigung cloudsql.instances.login, um sich bei einer Instanz anzumelden. Diese Berechtigung ist in der Rolle Cloud SQL-Instanznutzer enthalten. Damit der Nutzer diese Berechtigung erhält, binden Sie ihn, das Dienstkonto oder die Gruppe an die vordefinierte Cloud SQL-Rolle oder an eine benutzerdefinierte Rolle, die die Berechtigung umfasst. Weitere Informationen zu IAM-Rollen finden Sie unter Rollen.
  • Ressourcen: Die Ressourcen, auf die Hauptkonten zugreifen, sind Cloud SQL-Instanzen. Standardmäßig werden IAM-Richtlinienbindungen auf Projektebene angewendet, sodass Hauptkonten Rollenberechtigungen für alle Cloud SQL-Instanzen im Projekt erhalten.

Authentifizierung der IAM-Datenbank

Bei der Datenbankauthentifizierung wird die Identität eines Nutzers überprüft, der versucht, auf Datenbanken zuzugreifen. In Cloud SQL können Sie die folgenden Arten der Datenbankauthentifizierung für Datenbanknutzer verwenden:

  • Die integrierte Authentifizierung der Datenbank verwendet einen Nutzernamen und ein Passwort, um einen Datenbanknutzer zu authentifizieren.
  • Die IAM-Datenbankauthentifizierung verwendet IAM, um einen Nutzer mithilfe eines Zugriffstokens zu authentifizieren. Sie haben zwei Möglichkeiten, Nutzer oder Dienstkonten zu verwalten.
    • Einzelperson: Wenn Sie die IAM-Datenbankauthentifizierung verwenden, gewähren Sie standardmäßig IAM-Rollen und weisen einzelnen Nutzern und Dienstkonten Datenbankberechtigungen zu. Sie fügen Instanzen einzelne Konten hinzu und verwalten die Berechtigungen der einzelnen Konten separat.
    • Nach Gruppe: Mit der IAM-Gruppenauthentifizierung können Sie den Zugriff auf Cloud SQL-Instanzen auf Gruppenebene steuern. Sie können beispielsweise einer Cloud Identity-Gruppe Rollen und Datenbankberechtigungen zuweisen. Alle Nutzer und Dienstkonten in der Cloud Identity Gruppe übernehmen die IAM-Rollen und Datenbank Berechtigungen, die der Gruppe zugewiesen sind.

Optionen für die Datenbankauthentifizierung vergleichen

In der folgenden Tabelle werden verschiedene Methoden der Datenbankauthentifizierung für Cloud SQL verglichen.

Feature Integrierte Datenbankauthentifizierung IAM-Datenbankauthentifizierung (einzeln) IAM-Gruppenauthentifizierung
Authentifizierungsmethode Passwort Temporäres Authentifizierungstoken Temporäres Authentifizierungstoken
Verschlüsselung des Netzwerkverkehrs SSL nicht erforderlich SSL erforderlich SSL erforderlich
Nutzerverwaltung Manuell Zentral über IAM