Auf dieser Seite finden Sie Informationen zu IAM-Rollen (Identity and Access Management) und Berechtigungen sowie zu ihrer Verwendung mit Cloud SQL-Instanzen.
Einführung
Auf dieser Seite geht es um Aspekte von IAM mit Bezug zu Cloud SQL. Eine ausführliche Beschreibung von IAM und seinen allgemeinen Features finden Sie unter Identity and Access Management. Lesen Sie insbesondere den Abschnitt zur Verwaltung von IAM-Richtlinien. Mit IAM können Sie steuern, wer Zugriff auf die Ressourcen in Ihrem Google Cloud-Projekt hat. Die Gruppe von Zugriffsregeln, die Sie auf eine Ressource anwenden, wird als IAM-Richtlinie bezeichnet. In der IAM-Richtlinie für Ihr Projekt sind die Aktionen definiert, die Nutzer für alle Ressourcen in Ihrem Projekt ausführen können.
Mitglieder sind die Akteure bei IAM. Dies können einzelne Nutzer, Gruppen, Domains oder sogar die gesamte Öffentlichkeit sein. Den Mitgliedern werden Rollen zugewiesen, die diesen die Berechtigung geben, Aktionen in Cloud SQL sowie allgemein in Google Cloud durchzuführen. Jede Rolle umfasst eine oder mehrere Berechtigungen. Berechtigungen bilden die Grundlage von IAM: Jede Berechtigung gestattet es Ihnen, eine bestimmte Aktion auszuführen. Eine vollständige Liste aller in Cloud SQL verfügbaren Rollen und Berechtigungen finden Sie unter IAM-Rollen in Cloud SQL und IAM-Berechtigungen in Cloud SQL.
Wenn Sie ein Konto verwenden, um eine Verbindung zu einer Cloud SQL-Instanz herzustellen, muss das Konto die Rolle Cloud SQL > Client (roles/cloudsql.client
) haben, die die Berechtigungen, die für die Verbindung erforderlich, enthält.
Auf der Seite IAM & Verwaltung > IAM können Sie einem Konto in der Console Rollen hinzufügen. Auf der Seite IAM & Verwaltung > Rollen lässt sich dann prüfen, welche Berechtigungen zu welchen Rollen gehören.
Cloud SQL verwendet Dienstkonten für die Authentifizierung zwischen Cloud SQL und anderen Google Cloud-Produkten. Dienstkonten stellen credentials
im JSON-Format bereit, die Sie über die Console herunterladen und in verschiedenen Szenarien zur Authentifizierung verwenden können.
Cloud SQL-Rollen und -Berechtigungen mit Cloud SQL Auth-Proxy
Wenn Sie mit dem Cloud SQL Auth-Proxy eine Verbindung zu einer Cloud SQL-Instanz von einer Compute Engine-Instanz herstellen, können Sie das Compute Engine-Standarddienstkonto verwenden, das mit der Compute Engine-Instanz verknüpft ist.
Wie bei allen Konten, die eine Verbindung zu einer Cloud SQL-Instanz herstellen, muss das Dienstkonto die Rolle Cloud SQL > Client haben.
Cloud SQL-Rollen und -Berechtigungen mit serverlosen Optionen
Mit einem Dienstkonto autorisieren Sie den Zugriff von diesen Modulen. Das Dienstkonto autorisiert dabei den Zugriff auf Cloud SQL in einem bestimmten Projekt. Wenn Sie eine Anwendung oder eine Cloud Functions-Funktion erstellen, legt dieser Dienst das Konto für Sie an. Sie finden das Konto auf der Seite IAM & Verwaltung > IAM mit dem entsprechenden Suffix:
Serverlose Option | Suffix des Dienstkontos |
---|---|
App Engine | @gae-api-prod.google.com.iam.gserviceaccount.com |
Cloud Run-Funktionen | @appspot.gserviceaccount.com |
Cloud Run | compute@developer.gserviceaccount.com |
Cloud SQL-Rollen und -Berechtigungen mit Cloud Storage
Die Import- und Export-Features in Cloud SQL werden kombiniert angewendet. Die Export-Features schreiben in Cloud Storage und die Import-Features lesen daraus. Daher benötigt das Dienstkonto, das Sie für diese Vorgänge verwenden, sowohl Lese- als auch Schreibberechtigungen für Cloud Storage:
- Zum Importieren von Daten in bzw. Exportieren von Daten aus Cloud Storage muss für das Dienstkonto der Cloud SQL-Instanz im betreffenden Projekt die IAM-Rolle
storage.objectAdmin
festgelegt sein. Sie finden den Dienstkontonamen der Instanz in der Google Cloud Console auf der Seite Übersicht Ihrer Instanz. - Mit dem Befehl
gcloud storage buckets add-iam-policy-binding
können Sie diese IAM-Rolle dem Dienstkonto für den Bucket zuweisen. - Informationen zum Festlegen von IAM-Rollen und -Berechtigungen finden Sie unter IAM-Berechtigungen verwenden.
- Weitere Informationen finden Sie unter IAM für Cloud Storage.
Cloud SQL-Rollen und ‑Berechtigungen für die Dataplex-Integration
Wenn Sie einem Nutzer Zugriff auf Cloud SQL-Metadaten in Dataplex gewähren möchten, können Sie ihm die Rolle roles/cloudsql.schemaViewer
zuweisen oder die Berechtigung cloudsql.schemas.view
einer benutzerdefinierten Rolle hinzufügen.
Weitere Informationen finden Sie unter Cloud SQL-Ressourcen mit Dataplex Catalog verwalten.
Cloud SQL-Rollen und -Berechtigungen in anderen Szenarien
Cloud SQL interagiert auch mit anderen Google Cloud-Produkten und -Tools. Dabei sind ebenso bestimmte Rollen und Berechtigungen erforderlich, die je nach Szenario variieren können. Die Cloud SQL-Dokumentation enthält detaillierte Informationen zu den Anforderungen für die folgenden Fälle:
- Vom Kunden verwaltete Verschlüsselungsschlüssel verwenden
- IAM-Rollen für die Verwaltung von VPC Service Controls
IAM mit Projekten verwenden
In den folgenden Abschnitten wird beschrieben, wie Sie grundlegende IAM-Aufgaben an Projekten ausführen.
Für die folgenden Aufgaben benötigen Sie die IAM-Berechtigungen resourcemanager.projects.getIamPolicy
und resourcemanager.projects.setIamPolicy
.
Mitglieder zu einer Richtlinie auf Projektebene hinzufügen
Eine Liste der mit Cloud SQL verknüpften Rollen finden Sie unter IAM-Rollen.
Console
- Rufen Sie in der Google Cloud Console die Seite IAM & Verwaltung auf.
- Wählen Sie im Drop-down-Menü des Projekts in der oberen Leiste das Projekt aus, dem Sie ein Mitglied hinzufügen möchten.
- Klicken Sie auf Hinzufügen. Das Dialogfeld Mitglieder, Rollen zum Projekt hinzufügen wird angezeigt.
- Geben Sie im Feld Neue Mitglieder den Namen der Entität an, auf die Sie Zugriff gewähren möchten.
- Wählen Sie unter Rolle auswählen die entsprechende Rolle für das Mitglied aus. Die Rollen für Cloud SQL-Ressourcen finden Sie in den Untermenüs Projekt und Cloud SQL.
- Klicken Sie auf Speichern.
gcloud
Wenn Sie eine IAM-Richtlinie auf Projektebene hinzufügen möchten, verwenden Sie gcloud beta projects add-iam-policy-binding
.
IAM-Richtlinie für ein Projekt aufrufen
Console
- Rufen Sie in der Google Cloud Console die Seite IAM & Verwaltung auf.
- Wählen Sie im Drop-down-Menü des Projekts in der oberen Leiste das Projekt aus, dessen Richtlinie Sie aufrufen möchten.
- Zum Anzeigen von Berechtigungen für das Projekt haben Sie zwei Möglichkeiten:
- Anzeige nach Mitgliedern: Wenn Sie feststellen möchten, welche Rollen die einzelnen Mitglieder haben, rufen Sie die Spalte Rolle auf, die einzelnen Mitgliedern zugeordnet ist.
- Anzeige nach Rollen: Wenn Sie feststellen möchten, welche Mitglieder eine bestimmte Rolle haben, verwenden Sie das Drop-down-Menü für die einzelnen Rollen.
gcloud
Verwenden Sie den Befehl gcloud beta projects get-iam-policy
, um die IAM-Richtlinie eines Projekts anzusehen.
Mitglieder aus einer Richtlinie auf Projektebene entfernen
Console
- Rufen Sie in der Google Cloud Console die Seite IAM & Verwaltung auf.
- Wählen Sie im Drop-down-Menü des Projekts in der oberen Leiste das Projekt aus, aus dem Sie ein Mitglied entfernen möchten.
- Prüfen Sie, ob die Berechtigungen nach Mitglieder angezeigt werden, und wählen Sie die Mitglieder aus, die Sie entfernen möchten.
- Klicken Sie auf Entfernen.
- Klicken Sie im eingeblendeten Fenster auf Bestätigen.
gcloud
Wenn Sie eine IAM-Richtlinie auf Projektebene entfernen möchten, verwenden Sie gcloud beta projects remove-iam-policy-binding
.
Best Practices
IAM erfordert ebenso wie andere administrative Einstellungen eine aktive Verwaltung, um wirksam zu sein. Bevor Sie anderen Nutzern Zugriff auf eine Ressource gewähren, sollten Sie wissen, welche Rollen diese Personen spielen sollen. Veränderungen im Projektmanagement, den Nutzungsmustern sowie den Verantwortungsbereichen im Unternehmen können es im Lauf der Zeit erforderlich machen, die IAM-Einstellungen für Projekte anzupassen, insbesondere wenn Sie Cloud SQL in einer großen Organisation oder für eine große Gruppe von Nutzern verwalten. Berücksichtigen Sie die folgenden Best Practices bei der Bewertung und Planung Ihrer Zugriffssteuerungseinstellungen:
Gewähren Sie Zugriff nach dem Prinzip der geringsten Berechtigung. Das Prinzip der geringsten Berechtigung ist eine Sicherheitsrichtlinie zum Gewähren von Zugriff auf Ihre Ressourcen. Wenn Sie Zugriff anhand des Prinzips der geringsten Berechtigung gewähren, erteilen Sie einem Nutzer nur den Zugriff, den er für die zugewiesene Aufgabe benötigt.
Weisen Sie Personen, die Sie nicht kennen, keine Rollen mit der Berechtigung
setIamPolicy
zu. Mit der BerechtigungsetIamPolicy
können Nutzer Berechtigungen ändern und die Kontrolle über Daten übernehmen. Sie sollten Rollen mit der BerechtigungsetIamPolicy
nur verwenden, wenn Sie die administrative Kontrolle über Objekte und Buckets delegieren möchten.Achten Sie darauf, die administrative Kontrolle Ihrer Ressourcen zu delegieren. Achten Sie darauf, dass Ihre Ressourcen weiterhin von anderen Teammitgliedern verwaltet werden können, wenn eine Person mit Administratorzugriff die Gruppe verlässt. Dazu gibt es zwei gängige Möglichkeiten:
- Weisen Sie die Rolle Cloud SQL-Administrator für Ihr Projekt einer Gruppe statt einer einzelnen Person zu.
- Weisen Sie Ihrem Projekt die Rolle Cloud SQL-Administrator für mindestens zwei Personen zu.