RBAC-Rollen und -Berechtigungen

Auf dieser Seite werden die Rollen und Berechtigungen beschrieben, die von Cloud Data Fusion-Instanzen mit aktivierter rollenbasierter Zugriffssteuerung (Role-Based Access Control, RBAC) verwendet werden.

Verwenden Sie für eine differenzierte Zugriffserzwingung auf Namespace-Ebene und niedriger diese Ressourcen und Berechtigungen der Datenebene mit RBAC.

Ressourcenhierarchie

Cloud Data Fusion-Ressourcen haben die folgende Ressourcenhierarchie:

Ressourcenhierarchie eines Cloud Data Fusion-Projekts

Diese Abbildung zeigt die Ressourcenhierarchie in absteigender Reihenfolge (von der breitesten bis zur schmalsten): Google Cloud-Projekt, Standort, Cloud Data Fusion-Instanz und Namespaces. Unter den Namespaces befinden sich in keiner Reihenfolge Verbindungen, sichere Schlüssel, Pipelines, Artefakte (z. B. Plug-ins, Treiber und Anwendungen) und Compute-Profile.

Die folgenden Ressourcen sind Ressourcen der Cloud Data Fusion-Datenebene, die Sie mit der REST API oder in Cloud Data Fusion Studio steuern: Namespaces, Verbindungen, sichere Schlüssel, Pipelines, Artefakte und Compute-Profile.

Vordefinierte Rollen für RBAC

Cloud Data Fusion RBAC umfasst mehrere vordefinierte Rollen, die Sie verwenden können:

Rolle „Instanzzugriff” (datafusion.accessor)
Gewährt dem Hauptkonto Zugriff auf eine Cloud Data Fusion-Instanz, jedoch nicht auf Ressourcen innerhalb der Instanz. Verwenden Sie diese Rolle in Kombination mit anderen Namespace-spezifischen Rollen, um einen detaillierten Zugriff auf den Namespace zu ermöglichen.
Betrachterrolle (datafusion.viewer)
Gewährt einem Hauptkonto Zugriff auf einen Namespace zum Ansehen von Pipelines, aber nicht zum Erstellen oder Ausführen von Pipelines.
Operatorrolle (datafusion.operator)
Gewährt Zugriff auf ein Hauptkonto in einem Namespace, um Pipelines aufzurufen und auszuführen, das Compute-Profil zu ändern, Rechenprofile zu erstellen oder Artefakte hochzuladen. Kann dieselben Aktionen wie ein Entwickler ausführen, mit Ausnahme der Vorschau von Pipelines.
Entwicklerrolle (datafusion.developer)
Gewährt Zugriff auf ein Hauptkonto in einem Namespace, um eingeschränkte Ressourcen wie Pipelines innerhalb des Namespace zu erstellen und zu ändern, z. B. Pipelines.
Bearbeiterrolle datafusion.editor
Gewährt dem Hauptkonto vollständigen Zugriff auf alle Cloud Data Fusion-Ressourcen in einem Namespace innerhalb einer Cloud Data Fusion-Instanz. Diese Rolle muss dem Hauptkonto zusätzlich zur Rolle „Instanzzugriffsberechtigter“ gewährt werden. Mit dieser Rolle kann das Hauptkonto Ressourcen im Namespace erstellen, löschen und ändern.
Rolle „Instanzadministrator” (datafusion.admin)
Gewährt Zugriff auf alle Ressourcen innerhalb einer Cloud Data Fusion-Instanz. Zugewiesen über IAM. Nicht auf Namespace-Ebene über RBAC zugewiesen.
Vorgang datafusion.accessor datafusion.viewer datafusion.operator datafusion.developer datafusion.editor datafusion.admin
Instanzen
Instanz aufrufen
Namespaces
Namespace erstellt *
Namespace mit explizitem Zugriff gewährt
Auf Namespace ohne expliziten Zugriff zugreifen *
Namespace bearbeiten
Namespace gelöscht
Namespace-Dienstkonto
Dienstkonto hinzufügen
Dienstkonto bearbeiten
Dienstkonto entfernen
Dienstkonto verwenden
RBAC
Anderen Hauptkonten im Namespace Berechtigungen gewähren oder entziehen *
Zeitpläne
Zeitplan erstellen
Zeitplan ansehen
Zeitplan ändern
Compute-Profile
Computing-Profile erstellen
Computing-Profile ansehen
Computing-Profile bearbeiten
Computing-Profile löschen
Verbindungen
Verbindungen erstellen
Verbindungen ansehen
Verbindungen bearbeiten
Verbindungen löschen
Verbindungen verwenden
Pipelines
Pipelines erstellen
Pipelines ansehen
Pipelines bearbeiten
Pipelines löschen
Vorschau von Pipelines
Pipelines implementieren
Pipelines ausführen
Schlüssel sichern
Sichere Schlüssel erstellen
Sichere Schlüssel ansehen
Sichere Schlüssel löschen
Tags
Tags erstellen
Tags aufrufen
Tags löschen
Cloud Data Fusion Hub
Plug-ins bereitstellen
Versionsverwaltung
Versionsverwaltungs-Repository konfigurieren
Pipelines aus einem Namespace synchronisieren
Abstammung
Herkunft ansehen
Mehr über Logs erfahren
Logs ansehen

* Das Hauptkonto muss die IAM-Rolle „Data Fusion-Administrator“ und nicht die RBAC-Rolle „Instanzadministrator“ haben.

Eine vollständige Liste der Berechtigungen, die in der vordefinierten Rolle von Cloud Data Fusion enthalten sind, finden Sie unter Vordefinierte Rollen für Cloud Data Fusion.

Benutzerdefinierte Rollen für RBAC

Einige Anwendungsfälle lassen sich mit den vordefinierten Rollen für Cloud Data Fusion nicht implementieren. Erstellen Sie in diesen Fällen eine benutzerdefinierte Rolle.

Beispiele

In den folgenden Beispielen wird beschrieben, wie benutzerdefinierte Rollen für RBAC erstellt werden:

  • Wenn Sie eine benutzerdefinierte Rolle erstellen möchten, die nur Zugriff auf die sicheren Schlüssel in einem Namespace gewährt, erstellen Sie eine benutzerdefinierte Rolle mit den Berechtigungen datafusion.namespaces.get und datafusion.secureKeys.*.

  • Zum Erstellen einer benutzerdefinierten Rolle, die Lesezugriff auf sichere Schlüssel gewährt, erstellen Sie eine benutzerdefinierte Rolle mit den Berechtigungen datafusion.namespaces.get, datafusion.secureKeys.getSecret und datafusion.secureKeys.list.

Berechtigungen für allgemeine Aktionen

Unter Umständen reicht eine vordefinierte Berechtigung nicht aus, um die entsprechende Aktion auszuführen. Zum Aktualisieren von Namespace-Attributen benötigen Sie beispielsweise auch die Berechtigung datafusion.namespaces.get. In der folgenden Tabelle werden häufige Aktionen, die in einer Cloud Data Fusion-Instanz ausgeführt werden, und die erforderlichen IAM-Berechtigungen beschrieben:

Vorgang Erforderliche Berechtigung
Auf eine Instanz zugreifen datafusion.instances.get
Namespace erstellen datafusion.namespaces.create
Namespace abrufen datafusion.namespaces.get
Namespace-Metadaten aktualisieren (z. B. Attribute)
  • datafusion.namespaces.get
  • datafusion.namespaces.update
Namespace löschen (nur bei aktiviertem nicht wiederherstellbarem Zurücksetzen)
  • datafusion.namespaces.get
  • datafusion.namespaces.delete
Berechtigungen für Namespace ansehen datafusion.namespaces.getIamPolicy
Berechtigungen für Namespace gewähren datafusion.namespaces.setIamPolicy
Pull-Pipelines aus der SCM-Konfiguration des Namespace abrufen
  • datafusion.namespaces.get
  • datafusion.namespaces.readRepository
  • datafusion.pipelines.create
Pipelines an SCM-Repository für Namespace übertragen
  • datafusion.namespaces.get
  • datafusion.namespaces.writeRepository
SCM-Konfiguration für Namespace abrufen datafusion.namespaces.get
SCM-Konfiguration für Namespace aktualisieren datafusion.namespaces.updateRepositoryMetadata
Dienstkonto für einen Namespace festlegen
  • datafusion.namespaces.get
  • datafusion.namespaces.setServiceAccount
Dienstkonto für einen Namespace aufheben
  • datafusion.namespaces.get
  • datafusion.namespaces.unsetServiceAccount
Anmeldedaten des Dienstkontos für einen Namespace bereitstellen datafusion.namespaces.provisionCredential
Pipelineentwurf ansehen datafusion.namespaces.get
Pipelineentwurf erstellen/löschen
  • datafusion.namespaces.get
  • datafusion.namespaces.update
Compute-Profile auflisten datafusion.profiles.list
Compute-Profil erstellen datafusion.profiles.create
Compute-Profil aufrufen datafusion.profiles.get
Compute-Profil bearbeiten datafusion.profiles.update
Compute-Profil löschen datafusion.profiles.delete
Verbindung herstellen
  • datafusion.namespaces.get
  • datafusion.pipelineConnections.create
Verbindung ansehen
  • datafusion.namespaces.get
  • datafusion.pipelineConnections.get
Verbindung bearbeiten
  • datafusion.namespaces.get
  • datafusion.pipelineConnections.update
Verbindung löschen
  • datafusion.namespaces.get
  • datafusion.pipelineConnections.delete
Verbindungsspezifikationen durchsuchen, Beispiele ansehen oder ansehen
  • datafusion.namespaces.get
  • datafusion.pipelineConnections.use
Pipelines auflisten datafusion.namespaces.get
Pipeline erstellen
  • datafusion.namespaces.get
  • datafusion.pipelines.create
Pipeline ansehen
  • datafusion.namespaces.get
  • datafusion.pipelines.get
Pipeline bearbeiten
  • datafusion.namespaces.get
  • datafusion.pipelines.create
Pipelineeigenschaften bearbeiten
  • datafusion.namespaces.get
  • datafusion.pipelines.update
Pipeline löschen
  • datafusion.namespaces.get
  • datafusion.pipelines.delete
Vorschau der Pipeline anzeigen datafusion.pipelines.preview
Pipeline ausführen datafusion.pipelines.execute
Zeitplan erstellen datafusion.pipelines.execute
Zeitplan ansehen
  • datafusion.namespaces.get
  • datafusion.pipelines.get
Zeitplan ändern datafusion.pipelines.execute
Sichere Schlüssel auflisten
  • datafusion.namespaces.get
  • datafusion.secureKeys.list
Sichere Schlüssel erstellen
  • datafusion.namespaces.get
  • datafusion.secureKeys.update
Sichere Schlüssel ansehen
  • datafusion.namespaces.get
  • datafusion.secureKeys.getSecret
Sichere Schlüssel löschen
  • datafusion.namespaces.get
  • datafusion.secureKeys.delete
Artefakte auflisten*
  • datafusion.namespaces.get
  • datafusion.artifacts.list
Artefakt erstellen*
  • datafusion.namespaces.get
  • datafusion.artifacts.create
  • datafusion.artifacts.update
Artefakt erhalten*
  • datafusion.namespaces.get
  • datafusion.artifacts.get
Artefakt löschen*
  • datafusion.namespaces.get
  • datafusion.artifacts.delete
Einstellungen, Tags und Metadaten Einstellungen, Tags und Metadaten werden auf Ressourcenebene für die jeweilige Ressource (datafusion.RESOURCE.update) festgelegt.
Dataset-Berechtigungen (verworfen) datafusion.namespaces.update

* Artefakte wie Plug-ins und Treiber sind Elemente, die Sie zum Entwickeln von Pipelines in Cloud Data Fusion hochladen.

Nächste Schritte

  • Weitere Informationen zu RBAC in Cloud Data Fusion