Übersicht über die rollenbasierte Zugriffssteuerung (RBAC)

Auf dieser Seite wird die detaillierte Autorisierung mit der rollenbasierten Zugriffssteuerung (Role-based Access Control, RBAC) beschrieben, die in Cloud Data Fusion ab Version 6.5 verfügbar ist.

RBAC schränkt den Zugriff innerhalb der Umgebungen ein, in denen Sie Pipelines in Cloud Data Fusion entwickeln. Mit RBAC können Sie festlegen, wer Zugriff auf Cloud Data Fusion-Ressourcen hat, was mit diesen Ressourcen tun kann und auf welche Bereiche (z. B. Instanzen oder Namespaces) er zugreifen kann. Cloud Data Fusion RBAC ist ein Autorisierungssystem, das eine differenzierte Zugriffsverwaltung mithilfe von Identity and Access Management (IAM) ermöglicht.

Einsatzmöglichkeiten für RBAC

Die rollenbasierte Zugriffssteuerung ermöglicht die Isolierung auf Namespace-Ebene innerhalb einer einzelnen Cloud Data Fusion-Instanz. Sie wird für die folgenden Anwendungsfälle empfohlen:

  • Minimieren der Anzahl der von Ihrer Organisation verwendeten Instanzen.
  • Mehrere Entwickler, Teams oder Geschäftseinheiten verwenden eine einzige Cloud Data Fusion-Instanz.

Mit Cloud Data Fusion RBAC können Organisationen:

  • Einem Nutzer erlauben, eine Pipeline nur in einem Namespace auszuführen, ohne Artefakte oder Laufzeit-Rechenprofile zu ändern.
  • Einem Nutzer erlauben, die Pipeline nur anzusehen, aber nicht zu ändern oder auszuführen.
  • Einem Nutzer erlauben, eine Pipeline zu erstellen, bereitzustellen und auszuführen.

Empfohlen:Verwenden Sie auch bei Verwendung von RBAC separate Projekte und Instanzen für Entwicklungs- und Produktionsumgebungen, um die Isolation, die Sicherheit und die Leistungsstabilität aufrechtzuerhalten.

Beschränkungen

  • Einem Nutzer können auf Instanz- oder Namespace-Ebene eine oder mehrere Rollen zugewiesen werden.
  • RBAC ist nur in der Enterprise-Version von Cloud Data Fusion verfügbar.
  • Anzahl der Namespaces: Kein festes Limit für die Anzahl von Namespaces pro Instanz.
  • Die maximale Anzahl gleichzeitig aktiver Nutzer in einer RBAC-fähigen Instanz finden Sie unter Preise.
  • Benutzerdefinierte Rollen: Das Erstellen benutzerdefinierter RBAC-Rollen wird nicht unterstützt.
  • Cloud Data Fusion RBAC unterstützt keine Autorisierung für Verbindungsverwaltung.
  • Wenn Sie OAuth-Zugriffstokens für Dienstkonten für den Zugriff auf RBAC-fähige Instanzen der Version 6.5 verwenden, müssen die folgenden Bereiche angegeben werden, insbesondere der Bereich userinfo.email. Andernfalls erhalten Sie den Fehler „Berechtigung verweigert“.
    • https://www.googleapis.com/auth/userinfo.email
    • https://www.googleapis.com/auth/cloud-platform oder https://www.googleapis.com/auth/servicecontrol

Role assignments (Rollenzuweisungen)

Eine Rollenzuweisung besteht aus drei Elementen: Hauptkonto, Rollendefinition und Umfang.

Hauptkonto

Ein Hauptkonto (früher als Mitglied bezeichnet) kann ein Google-Konto (für Endnutzer), ein Dienstkonto (für Anwendungen und virtuelle Maschinen) oder eine Google-Gruppe sein, die Zugriff auf Cloud Data Fusion-Ressourcen anfordert. Sie können jedem dieser Hauptkonten eine Rolle zuweisen.

Rollendefinition

Eine Rolle enthält eine Reihe von Berechtigungen, mit denen Sie bestimmte Aktionen für Google Cloud-Ressourcen vornehmen können.

Cloud Data Fusion bietet mehrere vordefinierte Rollen, die Sie verwenden können.

Beispiele:

  • Mit der Instanzadministratorrolle (datafusion.admin) können Hauptkonten Namespaces erstellen und löschen und Berechtigungen gewähren.
  • Mit der Entwicklerrolle (datafusion.developer) können Hauptkonten Pipelines erstellen und löschen, Pipelines bereitstellen und Vorschauen ausführen.

Bereich

Der Bereich ist die Gruppe von Ressourcen, für die der Zugriff gilt. Wenn Sie eine Rolle zuweisen, können Sie die zulässigen Aktionen weiter einschränken, indem Sie einen Bereich definieren (z. B. eine Instanz oder einen Namespace). Dies ist hilfreich, wenn Sie jemandem die Rolle „Entwickler“ zuweisen möchten, jedoch nur für einen Namespace.

Sicherheitsempfehlungen

Die Einführung eines Sicherheitsmodells und die Anpassung an die Anforderungen Ihres Unternehmens kann eine Herausforderung sein. Die folgenden Empfehlungen sollen Ihnen den Umstieg auf das RBAC-Modell von Cloud Data Fusion erleichtern:

  • Die Rolle „Instanzadministrator“ sollte mit Bedacht gewährt werden. Diese Rolle ermöglicht vollständigen Zugriff auf eine Instanz und alle zugrunde liegenden Cloud Data Fusion-Ressourcen. Ein Hauptkonto mit dieser Rolle kann mithilfe der REST API anderen Berechtigungen gewähren.
  • Die Rolle „Instanzadministrator“ sollte nicht gewährt werden, wenn Hauptkonten Zugriff auf einzelne Namespaces in einer Cloud Data Fusion-Instanz benötigen. Weisen Sie stattdessen die Rolle „Instanzzugriff“ mit der Rolle „Betrachter“, „Entwickler“, „Operator“ oder „Bearbeiter“ zu, die für eine Teilmenge der Namespaces gewährt wurden.
  • Die Rolle Instance Accessor kann ohne Bedenken zuerst zugewiesen werden, da damit Hauptkonten Zugriff auf die Instanz gewährt, aber kein Zugriff auf Ressourcen in der Instanz gewährt wird. Diese Rolle wird in der Regel zusammen mit der Rolle Betrachter/Entwickler/Operator/Bearbeiter verwendet, um Zugriff auf einen oder eine Teilmenge der Namespaces innerhalb einer Instanz zu gewähren.
  • Die Betrachterrolle sollte Nutzern oder Google-Gruppen zugewiesen werden, die sich selbst um den Status ausgeführter Jobs kümmern bzw. Pipelines oder Logs mit Cloud Data Fusion-Instanzen aufrufen möchten. Beispiel: Nutzer von täglichen Berichten, die wissen möchten, ob die Verarbeitung abgeschlossen ist.
  • Die Rolle „Entwickler“ wird für ETL-Entwickler empfohlen, die für das Erstellen, Testen und Verwalten von Pipelines verantwortlich sind.
  • Die Operator-Rolle für einen Namespace wird für Nutzer empfohlen, die Operations Administrator oder DevOps-Dienste bereitstellen. Sie können alle Aktionen ausführen, die Entwickler ausführen können (außer für Vorschau von Pipelines), sowie Artefakte bereitstellen und Compute-Profile verwalten.
  • Die Bearbeiterrolle für einen Namespace ist eine privilegierte Rolle, die dem Nutzer oder der Google-Gruppe vollen Zugriff auf alle Ressourcen im Namespace gewährt. Die Bearbeiterrolle vereinigt Entwickler- und Operatorrollen.
  • Operatoren und Administratoren sollten bei der Installation nicht vertrauenswürdiger Plug-ins oder Artefakte vorsichtig sein, da diese ein Sicherheitsrisiko darstellen können.

Fehlerbehebung

In diesem Seitenabschnitt erfahren Sie, wie Sie Probleme im Zusammenhang mit RBAC in Cloud Data Fusion beheben.

Ein Hauptkonto mit der Rolle „Cloud Data Fusion-Betrachter“ für einen Namespace in RBAC kann Pipelines bearbeiten

Der Zugriff basiert auf einer Kombination aus IAM- und RBAC-Rollen. IAM-Rollen haben Vorrang vor RBAC-Rollen. Prüfen Sie, ob das Hauptkonto die IAM-Rolle Project Editor oder Cloud Data Fusion Admin hat.

Ein Hauptkonto mit der Rolle „Instanzadministrator“ in RBAC kann Cloud Data Fusion-Instanzen in der Google Cloud Console nicht ansehen

Es gibt ein bekanntes Problem in Cloud Data Fusion, bei dem Hauptkonten mit der Rolle „Instanzadministrator“ keine Instanzen in der Google Cloud Console ansehen können. Um das Problem zu beheben, gewähren Sie dem Hauptkonto entweder die Rolle Project Viewer oder eine der IAM-Rollen von Cloud Data Fusion und legen Sie es zusätzlich zum Administrator für eine Instanz fest. Dadurch wird für alle Instanzen im Projekt Lesezugriff auf das Hauptkonto gewährt.

Verhindern, dass ein Hauptkonto Namespaces aufruft, für die es keine Rolle hat

Damit ein Hauptkonto keine Namespaces anzeigen kann, für die es keine Rolle hat, darf es weder die Projektbetrachter- noch eine der Cloud Data Fusion-IAM-Rollen haben. Weisen Sie RBAC-Rollen stattdessen nur dem Hauptkonto in dem Namespace zu, in dem es ausgeführt werden muss.

Das Hauptkonto mit dieser Art von Zugriff kann die Liste der Cloud Data Fusion-Instanzen in der Google Cloud Console nicht sehen. Geben Sie ihnen stattdessen einen direkten Link zur Instanz, der in etwa so aussieht: https://INSTANCE_NAME-PROJECT_ID.REGION_NAME.datafusion.googleusercontent.com/

Wenn das Hauptkonto die Instanz öffnet, zeigt Cloud Data Fusion eine Liste von Namespaces an, in denen dem Hauptkonto eine RBAC-Rolle gewährt wird.

Einem Hauptkonto die Rolle „Cloud Data Fusion-Zugriffer“ gewähren

Die Zugriffsfunktion wird implizit einem Hauptkonto zugewiesen, wenn ihm eine andere RBAC-Rolle für eine Cloud Data Fusion-Instanz zugewiesen wird. Mit dem IAM Policy Analyzer können Sie prüfen, ob ein Hauptkonto diese Rolle auf einer bestimmten Instanz hat.

Nächste Schritte