IAM-Übersicht

Mit Identity and Access Management (IAM) können Sie den Nutzerzugriff auf Spanner Omni-Ressourcen steuern. Ein Nutzer kann beispielsweise uneingeschränkten Zugriff auf eine bestimmte Datenbank haben, aber keine anderen Datenbanken in Ihrer Bereitstellung erstellen oder ändern. Mit IAM können Sie einem Nutzer eine Berechtigung erteilen, ohne jede Spanner Omni-Datenbankberechtigung einzeln ändern zu müssen.

In diesem Dokument werden die für Spanner Omni relevanten IAM-Berechtigungen und die IAM-Rollen beschrieben, die mit diesen Berechtigungen erteilt werden. Eine detaillierte Beschreibung von IAM und seinen Funktionen finden Sie im Entwicklerhandbuch zur Identitäts- und Zugriffsverwaltung.

Berechtigungen

Berechtigungen erlauben es Nutzern, bestimmte Aktionen mit Spanner Omni-Ressourcen durchzuführen. Die Berechtigung spanner.databases.read gestattet es Nutzern beispielsweise, mit der Lese-API von Spanner Omni eine Datenbank auszulesen. Mit spanner.databases.export haben sie die Möglichkeit, eine Spanner Omni-Datenbank zu exportieren. Sie erteilen den Nutzern die Berechtigungen nicht direkt, sondern weisen ihnen vordefinierte Rollen zu, die eine oder mehrere Berechtigungen enthalten.

In den folgenden Tabellen sind die IAM-Berechtigungen aufgeführt, die mit Spanner Omni verknüpft sind. Einige Berechtigungen werden mit Spanner geteilt, andere werden nur von Spanner Omni verwendet.

Datenbanken

Die folgenden Berechtigungen gelten für Spanner Omni-Datenbanken.

Name der Datenbankberechtigung Beschreibung Spanner und Spanner Omni Nur Spanner Omni
spanner.databases.create Datenbank erstellen
spanner.databases.createBackup Erstellen Sie eine Sicherung aus der Datenbank. Erfordert auch spanner.backups.create, um die Sicherungsressource zu erstellen.
spanner.databases.get Metadaten einer Datenbank abrufen.
spanner.databases.getIamPolicy IAM-Richtlinie einer Datenbank abrufen.
spanner.databases.list Datenbanken auflisten.
spanner.databases.read Daten über die Lese-API aus einer Datenbank auslesen.
spanner.databases.setIamPolicy IAM-Richtlinie einer Datenbank festlegen.
spanner.databases.update Metadaten einer Datenbank aktualisieren.
spanner.databases.updateDdl Schema einer Datenbank aktualisieren.
spanner.databases.write In eine Datenbank schreiben.
spanner.databases.compact Tabellen in einer Datenbank komprimieren
spanner.databases.export Exportiert eine Spanner Omni-Datenbank
spanner.databases.import Importiert eine Spanner Omni-Datenbank
spanner.databases.addSplitPoints Fügt einer Datenbank Aufteilungspunkte hinzu.

Datenbankvorgänge

Die folgenden Berechtigungen gelten für Spanner Omni-Datenbankvorgänge.

Name der Berechtigung für Datenbankvorgänge Beschreibung Spanner und Spanner Omni Nur Spanner Omni
spanner.databaseOperations.cancel Datenbankvorgang abbrechen.
spanner.databaseOperations.delete Datenbankvorgang löschen.
spanner.databaseOperations.get Bestimmten Datenbankvorgang abrufen.
spanner.databaseOperations.list Datenbankvorgänge auflisten und Datenbankvorgänge wiederherstellen.

Sicherungen

Die folgenden Berechtigungen gelten für Spanner Omni-Sicherungen.

Name der Sicherungsberechtigung Beschreibung Spanner und Spanner Omni Nur Spanner Omni
spanner.backups.copy Eine Sicherung kopieren.
spanner.backups.create Eine Sicherung erstellen. Erfordert außerdem spanner.databases.createBackup für die Quelldatenbank.
spanner.backups.createDatabaseFromBackup Erstellen Sie eine Datenbank aus einer Sicherung.
spanner.backups.delete Eine Sicherung löschen.
spanner.backups.get Eine Sicherung abrufen.
spanner.backups.getIamPolicy Rufen Sie die IAM-Richtlinie einer Sicherung ab.
spanner.backups.list Sicherungen auflisten.
spanner.backups.restoreDatabase Datenbank aus einer Sicherung wiederherstellen. Erfordert außerdem spanner.databases.create, um die wiederhergestellte Datenbank zu erstellen.
spanner.backups.setIamPolicy Legen Sie die IAM-Richtlinie einer Sicherung fest.
spanner.backups.update Eine Sicherung aktualisieren.
spanner.backups.import Importiert eine Sicherung aus einem externen Speicher

Sicherungsvorgänge

Die folgenden Berechtigungen gelten für Spanner Omni-Sicherungsvorgänge.

Berechtigungsname für den Sicherungsvorgang Beschreibung Spanner und Spanner Omni Nur Spanner Omni
spanner.backupOperations.cancel Einen Sicherungsvorgang abbrechen.
spanner.backupOperations.get Einen bestimmten Sicherungsvorgang abrufen.
spanner.backupOperations.list Sicherungsvorgänge auflisten.

Sicherungszeitpläne

Die folgenden Berechtigungen gelten für Spanner Omni-Sicherungszeitpläne.

Name der Berechtigung für den Sicherungszeitplan Beschreibung Spanner und Spanner Omni Nur Spanner Omni
spanner.backupSchedules.create Erstellen Sie einen Sicherungszeitplan. Erfordert außerdem spanner.databases.createBackup für die Quelldatenbank.
spanner.backupSchedules.delete Sicherungszeitplan löschen
spanner.backupSchedules.get Sicherungszeitplan abrufen.
spanner.backupSchedules.list Sicherungszeitpläne auflisten.
spanner.backupSchedules.update Einen Sicherungszeitplan aktualisieren.
spanner.backupSchedules.getIamPolicy IAM-Richtlinie eines Sicherungszeitplans abrufen.
spanner.backupSchedules.setIamPolicy IAM-Richtlinie für einen Sicherungszeitplan festlegen.

Sicherungsdeskriptoren

Die folgenden Berechtigungen gelten für Spanner Omni-Sicherungsdeskriptoren.

Name der Berechtigung für den Sicherungsdeskriptor Beschreibung Spanner und Spanner Omni Nur Spanner Omni
spanner.backupDescriptors.import Importiert eine Sicherung aus einem Sicherungsdeskriptor.
spanner.backupDescriptors.list Sicherungsdeskriptoren auflisten.

Sitzungen

Die folgenden Berechtigungen gelten für Spanner Omni-Sitzungen.

Name der Sitzungsberechtigung Beschreibung Spanner und Spanner Omni Nur Spanner Omni
spanner.sessions.create Sitzung erstellen.
spanner.sessions.delete Sitzung löschen.
spanner.sessions.get Sitzung abrufen.
spanner.sessions.list Sitzungen auflisten.

Standort und Zonen

Die folgenden Berechtigungen gelten für Spanner Omni-Standorte und -Zonen.

Name der Berechtigung Beschreibung Spanner und Spanner Omni Nur Spanner Omni
spanner.locations.create Spanner Omni-Standort erstellen
spanner.locations.delete Spanner Omni-Standort löschen
spanner.locations.get Spanner Omni-Standort abrufen
spanner.locations.list Spanner Omni-Standorte auflisten
spanner.locationDistances.create Spanner Omni-Standortentfernung erstellen
spanner.locationDistances.delete Spanner Omni-Standortentfernung löschen
spanner.locationDistances.get Entfernung zu einem Spanner-Omni-Standort abrufen
spanner.locationDistances.list Entfernungen von Spanner-Omni-Standorten auflisten
spanner.locationDistances.update Entfernung eines Spanner Omni-Standorts aktualisieren
spanner.zones.create Spanner Omni-Zone erstellen
spanner.zones.delete Spanner Omni-Zone löschen
spanner.zones.get Spanner-Omni-Zone abrufen
spanner.zones.list Spanner Omni-Zonen auflisten

Server

Die folgenden Berechtigungen gelten für Spanner Omni-Server.

Name der Serverberechtigung Beschreibung Spanner und Spanner Omni Nur Spanner Omni
spanner.servers.create Erstellt einen Spanner Omni-Server.
spanner.servers.delete Löscht einen Spanner Omni-Server
spanner.servers.get Ruft einen Spanner Omni-Server ab.
spanner.servers.list Listet Spanner Omni-Server auf

Nutzer und Rollen

Die folgenden Berechtigungen gelten für Spanner Omni-Nutzer und -Rollen.

Name der Berechtigung Beschreibung Spanner und Spanner Omni Nur Spanner Omni
spanner.users.create Erstellt einen Spanner Omni-Nutzer.
spanner.users.delete Löscht einen Spanner Omni-Nutzer
spanner.users.get Ruft einen Spanner Omni-Nutzer ab.
spanner.users.list Spanner Omni-Nutzer auflisten
spanner.users.update Aktualisiert einen Spanner Omni-Nutzer
spanner.roles.get Ruft eine Spanner Omni-Rolle ab
spanner.roles.list Listet Spanner Omni-Rollen auf

Externer Speicher

Die folgenden Berechtigungen gelten für den externen Spanner Omni-Speicher.

Name der Berechtigung für externe Speichergeräte Beschreibung Spanner und Spanner Omni Nur Spanner Omni
spanner.externalStorages.create Externen Speicher erstellen
spanner.externalStorages.delete Löscht einen externen Speicher
spanner.externalStorages.get Externen Speicher abrufen
spanner.externalStorages.getIamPolicy Ruft die IAM-Richtlinie eines externen Speichers ab.
spanner.externalStorages.list Externe Speicher auflisten
spanner.externalStorages.setIamPolicy Legt die IAM-Richtlinie eines externen Speichers fest.

Dateisystem und Deskriptoren

Die folgenden Berechtigungen gelten für das Spanner Omni-Dateisystem.

Name der Berechtigung Beschreibung Spanner und Spanner Omni Nur Spanner Omni
spanner.filesystem.cat Druckt Dateien im Spanner Omni-Dateisystem
spanner.filesystem.ls Listet Dateien im Spanner Omni-Dateisystem auf
spanner.descriptors.print Gibt Deskriptoren im Spanner Omni-Dateisystem aus.

Weitere Administratorberechtigungen

Die folgenden Berechtigungen gelten für andere Spanner Omni-Administratoraufgaben.

Name der Berechtigung Beschreibung Spanner und Spanner Omni Nur Spanner Omni
spanner.chubby.list Listet Chubby-Zellen auf
spanner.chubby.print Gibt die Inhalte der Chubby-Zelle aus
spanner.deployment.get Spanner Omni-Bereitstellung abrufen
spanner.diagnostics.create Erfasst Artefakte von Spanner Omni-Servern zum Debuggen
spanner.internal-tables.sql Führt SQL-Abfragen für interne Tabellen aus
spanner.logs.copy Kopiert Protokolle von einem Spanner Omni-Server
spanner.tablet.move Verschiebt ein Tablet von einem Spanner Omni-Server auf einen anderen
spanner.workflows.delete Löscht einen Workflow in einer Datenbank
spanner.groups.compact Tablets in einer Gruppe zusammenfassen
spanner.directories.compact Kompakt-Tablets in einem Verzeichnis

Vordefinierte Rollen

Eine vordefinierte Rolle ist ein Bündel aus einer oder mehreren Berechtigungen. Spanner Omni unterstützt die folgenden vordefinierten Rollen:

Rolle Beschreibung
roles/spanner.admin Umfasst vollständigen Zugriff auf alle Spanner Omni-Ressourcen. Beinhaltet alle Berechtigungen.
roles/spanner.backupAdmin Hat vollständigen Zugriff auf Spanner Omni-Sicherungen und ‑Sicherungsvorgänge.
roles/spanner.backupWriter Kann Sicherungen erstellen, aber nicht aktualisieren oder löschen.
roles/spanner.databaseAdmin Umfasst vollständigen Zugriff auf alle Spanner Omni-Datenbanken in einem Projekt.
roles/spanner.databaseReader Kann Daten aus der Spanner Omni-Datenbank lesen und das Schema ansehen.
roles/spanner.databaseUser Kann Daten aus der Spanner Omni-Datenbank lesen und in diese schreiben.
roles/spanner.editor Bearbeiterrolle für Spanner Omni.
roles/spanner.restoreAdmin Kann eine Datenbank aus einer Sicherung wiederherstellen.
roles/spanner.viewer Kann alle Spanner Omni-Ressourcen ansehen, aber nicht ändern. Beinhaltet Leseberechtigungen.

Für Spanner Omni gelten einige weitere wichtige Einschränkungen:

  • Keine benutzerdefinierten Rollen.
  • Keine detaillierte Zugriffssteuerung.
  • Keine IAM-Bedingungen.

Nächste Schritte