Übersicht über die rollenbasierte Zugriffssteuerung (RBAC)

Auf dieser Seite wird die differenzierte 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 diese Nutzer mit diesen Ressourcen tun können und auf welche Bereiche (z. B. Instanzen oder Namespaces) sie zugreifen können. Cloud Data Fusion RBAC ist ein Autorisierungssystem, das eine differenzierte Zugriffsverwaltung auf Basis von Identity and Access Management (IAM) bietet.

Einsatzmöglichkeiten für RBAC

Die rollenbasierte Zugriffssteuerung bietet eine Isolation 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:

  • Erlauben Sie einem Nutzer, eine Pipeline nur innerhalb eines Namespace auszuführen, aber keine Artefakte oder Compute-Profile für die Laufzeit zu ändern.
  • Einem Nutzer erlauben, die Pipeline nur anzusehen, aber keine Pipeline zu ändern oder ausführen
  • Einem Nutzer erlauben, eine Pipeline zu erstellen, bereitzustellen und auszuführen.

Empfohlen:Auch bei Verwendung von RBAC sollten Sie zur Aufrechterhaltung der Isolation, Sicherheit und Leistungsstabilität separate Projekte und Instanzen für Entwicklungs- und Produktionsumgebungen verwenden.

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 gleichzeitiger 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 in der Verbindungsverwaltung.
  • Wenn Sie für den Zugriff auf RBAC-fähige Instanzen der Version 6.5 OAuth-Zugriffstokens für Dienstkonten verwenden, müssen die folgenden Bereiche angegeben werden, insbesondere der Bereich userinfo.email. Andernfalls treten Fehler aufgrund von abgelehnten Berechtigungen auf.
    • 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 „Developer“ 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 anderen mithilfe der REST API 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.
  • Instanzzugriffsfunktion kann zuerst sicher zugewiesen werden, da sie Hauptkonten den Zugriff auf die Instanz ermöglicht, aber keinen Zugriff auf Ressourcen innerhalb der Instanz gewährt. 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. Beispielsweise Nutzer von täglichen Berichten, die wissen möchten, ob die Verarbeitung abgeschlossen wurde.
  • Die Entwicklerrolle 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 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 Viewer“ 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 Projektbearbeiter oder Cloud Data Fusion-Administrator hat.

Ein Hauptkonto mit der Rolle „Instanzadministrator“ in RBAC kann sich keine Cloud Data Fusion-Instanzen in der Google Cloud Console 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, weisen Sie dem Hauptkonto entweder die Projektbetrachter oder eine der Cloud Data Fusion-IAM-Rollen zu. Dadurch wird für alle Instanzen im Projekt Lesezugriff auf das Hauptkonto gewährt.

Verhindern, dass ein Hauptkonto Namespaces ansehen kann, in denen es keine Rolle hat

Um zu verhindern, dass ein Hauptkonto Namespaces ansehen kann, in denen es keine Rolle hat, darf es nicht die Projektbetrachter-Rolle oder eine der Cloud Data Fusion-IAM-Rollen haben. Weisen Sie dem Hauptkonto stattdessen RBAC-Rollen nur 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. Stellen Sie stattdessen einen direkten Link zur Instanz bereit, etwa so: https://INSTANCE_NAME-PROJECT_ID.REGION_NAME.datafusion.googleusercontent.com/

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

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

Die Rolle „Accessor“ wird implizit einem Hauptkonto zugewiesen, wenn ihm für eine Cloud Data Fusion-Instanz eine andere RBAC-Rolle zugewiesen wird. Informationen dazu, ob ein Hauptkonto diese Rolle auf einer bestimmten Instanz hat, finden Sie in IAM Policy Analyzer.

Nächste Schritte