Vordefinierte Rollen und Berechtigungen

Auf dieser Seite finden Sie Informationen zu den Rollen und Berechtigungen von Cloud Identity and Access Management (Cloud IAM) für BigQuery.

Hier werden auch die Rollen und Berechtigungen beschrieben, die für jedes der BigQuery-Begleitprodukte relevant sind:

  • BigQuery ML
  • BigQuery Data Transfer Service
  • BigQuery BI Engine

Informationen zu den Zugriffssteuerungen in BigQuery ML finden Sie unter Zugriffssteuerung in der Dokumentation zu BigQuery ML.

Überblick

Wenn eine Identität eine Google Cloud API aufruft, erfordert BigQuery, dass die Identität die entsprechenden Berechtigungen zur Verwendung der Ressource hat. Sie können Berechtigungen dadurch gewähren, dass Sie einem Nutzer, einer Gruppe oder einem Dienstkonto Rollen zuweisen.

Auf dieser Seite werden die Cloud IAM-Rollen beschrieben, die Sie Identitäten für den Zugriff auf BigQuery-Ressourcen zuweisen können.

Arten von Cloud IAM-Rollen

In Cloud Identity and Access Management gibt es drei Arten von Rollen:

  • Einfache Rollen, zu denen die Rollen "Inhaber", "Bearbeiter" und "Betrachter" gehören, die es schon vor der Einführung von Cloud Identity and Access Management gab.
  • Vordefinierte Rollen, die einen genau definierten Zugriff auf einen bestimmten Dienst ermöglichen und von Google Cloud verwaltet werden. Vordefinierte Rollen sollen allgemeine Anwendungsfälle und Zugriffskontrollmuster unterstützen.
  • Benutzerdefinierte Rollen, die einen genau definierten Zugriff gemäß einer vom Nutzer angegebenen Liste von Berechtigungen ermöglichen.

Um zu ermitteln, ob eine oder mehrere Berechtigungen in einer einfachen, vordefinierten oder benutzerdefinierten Rolle enthalten sind, können Sie eine der folgenden Methoden verwenden:

Wenn Sie einem Nutzer sowohl vordefinierte als auch einfache Rollen zuweisen, werden ihm die Berechtigungen beider Rollen gewährt.

Weitere Informationen dazu, wie Sie mit Cloud IAM auf Ressourcen zugreifen, finden Sie in der Dokumentation zu Cloud Identity and Access Management unter Zugriff auf Ressourcen erteilen, ändern und entziehen.

Weitere Informationen zum Erstellen von Rollen finden Sie in der Dokumentation zu Cloud Identity and Access Management unter Benutzerdefinierte Rollen erstellen und verwalten.

Berechtigungen und vordefinierte Cloud IAM-Rollen für BigQuery

Wenn Sie Zugriff auf eine Ressource gewähren möchten, weisen Sie einem Nutzer, einer Gruppe oder einem Dienstkonto mindestens eine Rolle zu. Wenn Sie Rollen auf Organisations- und Projektebene zuweisen, erteilen Sie die Berechtigung zum Ausführen von BigQuery-Jobs oder zum Verwalten aller BigQuery-Ressourcen eines Projekts.

Sie können Rollen auch auf Dataset-Ebene zuweisen, wenn Sie Zugriff auf ein einzelnes oder mehrere Datasets gewähren möchten. In der Cloud IAM-Richtlinienhierarchie sind BigQuery-Datasets untergeordnete Ressourcen von Projekten. Tabellen und Ansichten sind untergeordnete Ressourcen von Datasets. Sie übernehmen die Berechtigungen des ihnen übergeordneten Datasets.

Weitere Informationen zum Zuweisen von Rollen auf Dataset-Ebene finden Sie unter Zugriff auf Datasets steuern.

BigQuery-Berechtigungen

In der folgenden Tabelle werden die für BigQuery verfügbaren Berechtigungen aufgelistet.

Berechtigung Beschreibung
bigquery.jobs.create Ausführen von Jobs, einschließlich Abfragen, innerhalb des Projekts.
bigquery.jobs.listAll Alle Jobs auflisten und Metadaten der einzelnen Jobs abrufen, die von einem Nutzer gesendet wurden.*
bigquery.jobs.list Alle Jobs auflisten und Metadaten der einzelnen Jobs abrufen, die von einem Nutzer gesendet wurden.* Bei Jobs, die von anderen Nutzern gesendet wurden, werden Details und Metadaten entfernt.
bigquery.jobs.get Daten und Metadaten eines Jobs abrufen.*
bigquery.jobs.update Jobs abbrechen.*
bigquery.datasets.create Neue, leere Datasets erstellen.
bigquery.datasets.delete Datasets löschen.
bigquery.datasets.get Metadaten über ein Dataset abrufen.
bigquery.datasets.update Metadaten eines Datasets aktualisieren.
bigquery.tables.create Neue Tabellen erstellen.
bigquery.tables.list Tabellen und Metadaten zu Tabellen auflisten.
bigquery.tables.delete Tabellen löschen.
bigquery.tables.get Metadaten von Tabellen abrufen.
Zum Abrufen der Tabellendaten benötigen Sie bigquery.tables.getData.
bigquery.tables.getData Tabellendaten abrufen. Diese Berechtigung wird zum Abfragen von Tabellendaten benötigt.
Zum Abrufen von Tabellenmetadaten benötigen Sie bigquery.tables.get.
bigquery.tables.export Tabellendaten aus BigQuery exportieren.
bigquery.tables.update

Tabellenmetadaten aktualisieren.
Zum Aktualisieren von Tabellendaten benötigen Sie bigquery.tables.updateData.

bigquery.tables.updateData

Tabellendaten aktualisieren.
Zum Aktualisieren von Tabellenmetadaten benötigen Sie bigquery.tables.update.

bigquery.routines.create (Beta) Neue Routinen (Funktionen und gespeicherte Prozeduren) erstellen.
bigquery.routines.list (Beta) Routinen und Metadaten zu Routinen auflisten.
bigquery.routines.delete (Beta) Routinen löschen.
bigquery.routines.get (Beta) Routinendefinitionen und -metadaten abrufen.
bigquery.routines.update (Beta)

Routinendefinitionen und -metadaten aktualisieren.

bigquery.transfers.get Übertragungsmetadaten abrufen.
bigquery.transfers.update Übertragungen erstellen, aktualisieren und löschen.
bigquery.savedqueries.create Gespeicherte Abfragen erstellen.
bigquery.savedqueries.get Metadaten für gespeicherte Abfragen abrufen.
bigquery.savedqueries.list Gespeicherte Abfragen auflisten.
bigquery.savedqueries.update Gespeicherte Abfragen aktualisieren.
bigquery.savedqueries.delete Gespeicherte Abfragen löschen.
bigquery.readsessions.create (Beta) Mithilfe der BigQuery Storage API eine neue Lesesitzung erstellen.
bigquery.connections.create (Beta) Neue Verbindungen in einem Projekt erstellen.
bigquery.connections.get (Beta) Verbindungsmetadaten abrufen. Anmeldedaten sind ausgeschlossen.
bigquery.connections.list (Beta) Verbindungen in einem Projekt auflisten.
bigquery.connections.use (Beta) Verbindungskonfiguration verwenden, um eine Verbindung zu einer Remotedatenquelle herzustellen.
bigquery.connections.update (Beta) Verbindung und zugehörige Anmeldedaten aktualisieren.
bigquery.connections.delete (Beta) Verbindung löschen.
bigquery.reservations.create (Beta) Reservierung in einem Projekt erstellen.
bigquery.reservations.list (Beta) Alle Reservierungen in einem Projekt auflisten.
bigquery.reservations.get (Beta) Details zu einer Reservierung abrufen.
bigquery.reservations.delete (Beta) Eine Reservierung löschen.
bigquery.reservations.update (Beta) Die Attribute einer Reservierung aktualisieren.
bigquery.capacityCommitments.create (Beta) Eine Kapazitätszusicherung im Projekt erstellen.
bigquery.capacityCommitments.list (Beta) Alle Kapazitätszusicherungen in einem Projekt auflisten.
bigquery.capacityCommitments.get (Beta) Details zu einer Kapazitätszusicherung abrufen.
bigquery.capacityCommitments.delete (Beta) Eine Kapazitätszusicherung löschen.
bigquery.reservationAssignments.create (Beta)

Eine Reservierungszuweisung erstellen. Diese Berechtigung ist für das Eigentümerprojekt und die zugewiesene Ressource erforderlich.
Um eine Reservierungszuweisung zu verschieben, benötigen Sie bigquery.reservationAssignments.create für das neue Eigentümerprojekt und die zugewiesene Ressource.

bigquery.reservationAssignments.delete (Beta)

Eine Reservierungszuweisung löschen. Diese Berechtigung ist für das Eigentümerprojekt und die zugewiesene Ressource erforderlich.
Um eine Reservierungszuweisung zu verschieben, benötigen Sie bigquery.reservationAssignments.delete für das alte Eigentümerprojekt und die zugewiesene Ressource.

bigquery.reservationAssignments.list (Beta)

Reservierungszuweisungen auflisten.
Um nach einer Reservierungszuweisung für ein bestimmtes Projekt, einen Ordner oder eine Organisation zu suchen, benötigen Sie bigquery.reservationAssignments.list für die zugewiesene Ressource.

* Für jeden Job, den Sie erstellen, haben Sie automatisch die entsprechenden Berechtigungen bigquery.jobs.get und bigquery.jobs.update für diesen Job.

Vordefinierte Cloud IAM-Rollen für BigQuery

In der folgenden Tabelle werden die vordefinierten Cloud IAM-Rollen für BigQuery einschließlich einer Liste aller Berechtigungen der einzelnen Rollen aufgelistet. Jede Berechtigung gilt für einen bestimmten Ressourcentyp.

BigQuery-Rollen

Rolle Titel Beschreibung Berechtigungen Niedrigste Ressource
roles/
bigquery.admin
BigQuery-Administrator Berechtigungen zum Verwalten aller Ressourcen im Projekt. Es können damit alle Daten im Projekt verwaltet und Jobs von anderen Nutzern abgebrochen werden, die im Projekt ausgeführt werden. bigquery.*
resourcemanager.projects.get resourcemanager.projects.list
Projekt
roles/
bigquery.connectionAdmin
BigQuery-VerbindungsadministratorBeta bigquery.connections.*
roles/
bigquery.connectionUser
BigQuery-VerbindungsnutzerBeta bigquery.connections.get
bigquery.connections.getIamPolicy bigquery.connections.list bigquery.connections.use
roles/
bigquery.dataEditor
BigQuery-Datenbearbeiter

Bei Anwendung auf Datasets erteilt dataEditor die Berechtigung zum:

  • Lesen der Metadaten des Datasets und Auflisten der Tabellen im Dataset
  • Erstellen, Aktualisieren, Abrufen und Löschen der Tabellen des Datasets

Bei Anwendung auf Projekt- oder Organisationsebene ermöglicht die Rolle zusätzlich das Erstellen neuer Datasets.

bigquery.datasets.create
bigquery.datasets.get bigquery.datasets.getIamPolicy bigquery.datasets.updateTag bigquery.models.* bigquery.routines.* bigquery.tables.create bigquery.tables.delete bigquery.tables.export bigquery.tables.get bigquery.tables.getData bigquery.tables.list bigquery.tables.update bigquery.tables.updateData bigquery.tables.updateTag resourcemanager.projects.get resourcemanager.projects.list
Dataset
roles/
bigquery.dataOwner
BigQuery-Dateninhaber

Bei Anwendung auf Datasets erteilt dataOwner die Berechtigung zum:

  • Lesen, Aktualisieren und Löschen des Datasets
  • Erstellen, Aktualisieren, Abrufen und Löschen der Tabellen des Datasets

Bei Anwendung auf Projekt- oder Organisationsebene ermöglicht die Rolle zusätzlich das Erstellen neuer Datasets.

bigquery.datasets.*
bigquery.models.* bigquery.routines.* bigquery.tables.* resourcemanager.projects.get resourcemanager.projects.list
Dataset
roles/
bigquery.dataViewer
BigQuery-Datenbetrachter

Bei Anwendung auf Datasets erteilt dataViewer die Berechtigung zum:

  • Lesen der Metadaten des Datasets und Auflisten der Tabellen im Dataset
  • Lesen der Daten und Metadaten aus den Tabellen des Datasets

Bei Anwendung auf Projekt- oder Organisationsebene ermöglicht diese Rolle die Aufzählung aller Datasets im Projekt. Für die Ausführung von Jobs sind jedoch weitere Rollen erforderlich.

bigquery.datasets.get
bigquery.datasets.getIamPolicy bigquery.models.getData bigquery.models.getMetadata bigquery.models.list bigquery.routines.get bigquery.routines.list bigquery.tables.export bigquery.tables.get bigquery.tables.getData bigquery.tables.list resourcemanager.projects.get resourcemanager.projects.list
Dataset
roles/
bigquery.jobUser
BigQuery-Jobnutzer Berechtigungen zum Ausführen von Jobs im Projekt, einschließlich Abfragen Mit der Rolle Jobnutzer können die eigenen Jobs aufgezählt und abgebrochen werden. bigquery.jobs.create
resourcemanager.projects.get resourcemanager.projects.list
Projekt
roles/
bigquery.metadataViewer
BigQuery-Metadaten-Betrachter

Bei Anwendung auf Projekt- oder Organisationsebene berechtigt metadataViewer zu Folgendem:

  • Auflisten aller Datasets und Lesen der Metadaten für alle Datasets im Projekt
  • Auflisten aller Tabellen und Ansichten und Lesen der Metadaten für alle Tabellen und Ansichten im Projekt

Für die Ausführung von Jobs sind weitere Rollen erforderlich.

bigquery.datasets.get
bigquery.datasets.getIamPolicy bigquery.models.getMetadata bigquery.models.list bigquery.routines.get bigquery.routines.list bigquery.tables.get bigquery.tables.list resourcemanager.projects.get resourcemanager.projects.list
Projekt
roles/
bigquery.readSessionUser
BigQuery-LesesitzungsnutzerBeta Zugriff zum Erstellen und Verwenden von Lesesitzungen bigquery.readsessions.*
resourcemanager.projects.get resourcemanager.projects.list
roles/
bigquery.user
BigQuery-Nutzer Berechtigungen zum Ausführen von Jobs im Projekt, einschließlich Abfragen Mit der Nutzerrolle können die eigenen Jobs aufgezählt und storniert sowie Datasets in einem Projekt aufgezählt werden. Darüber hinaus ermöglicht die Rolle das Erstellen neuer Datasets im Projekt. Dem Ersteller wird für diese neuen Datasets die Rolle bigquery.dataOwner zugewiesen. bigquery.config.get
bigquery.datasets.create bigquery.datasets.get bigquery.datasets.getIamPolicy bigquery.jobs.create bigquery.jobs.list bigquery.models.list bigquery.readsessions.* bigquery.routines.list bigquery.savedqueries.get bigquery.savedqueries.list bigquery.tables.list bigquery.transfers.get resourcemanager.projects.get resourcemanager.projects.list
Projekt

Einfache BigQuery-Rollen

Informationen zu einfachen BigQuery-Rollen finden Sie unter Einfache Rollen und Berechtigungen für BigQuery.

Benutzerdefinierte BigQuery-Rollen

Zum Erstellen einer benutzerdefinierten Cloud IAM-Rolle für BigQuery folgen Sie der Anleitung in der Cloud IAM-Dokumentation zu benutzerdefinierten Rollen.

Weitere Informationen