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 zwischen 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 IAM-Richtlinie eines externen Speichers abrufen ✔
spanner.externalStorages.list Externe Speicher auflisten ✔
spanner.externalStorages.setIamPolicy Legt die IAM-Richtlinie für einen externen Speicher 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 Chubby-Zellen auflisten ✔
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 Kompakte 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 Hat 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 Editor-Rolle 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