Übersicht über die rollenbasierte Zugriffssteuerung (RBAC)

Auf dieser Seite wird die detaillierte Autorisierung mit der rollenbasierten Zugriffssteuerung (Role-Based Access Control, RBAC) in Cloud Data Fusion beschrieben.

Wenn Sie RBAC in Ihren Cloud Data Fusion-Instanzen aktivieren, können Sie Zugriff innerhalb von Instanzen und Namespaces steuern, z. B. wer Zugriff Cloud Data Fusion-Ressourcen und was sie mit ihnen tun können

Anwendungsfälle für die rollenbasierte Zugriffsverwaltung

RBAC bietet die Isolierung auf Namespace-Ebene in einem Cloud Data Fusion-Instanz. Es 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 innerhalb eines Namespace auszuführen, aber nicht zu ändern Artefakte oder Laufzeit-Compute-Profile.
  • Einem Nutzer erlauben, die Pipeline nur anzusehen, aber nicht zu ändern oder auszuführen zu erstellen.
  • Einem Nutzer erlauben, eine Pipeline zu erstellen, bereitzustellen und auszuführen.

Empfohlen: Auch wenn Sie RBAC verwenden, sollten Sie zur Gewährleistung 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: Keine feste Beschränkung für die Anzahl der 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.
  • Die rollenbasierte Zugriffssteuerung (Role-Based Access Control, RBAC) von Cloud Data Fusion unterstützt derzeit keine Autorisierung für die Verbindungsverwaltung.
  • Wenn Sie OAuth-Zugriffstokens für den Zugriff auf Instanzen mit aktivierter Version 6.5 verwenden, müssen Sie die folgenden Bereiche angeben, insbesondere den Bereich userinfo.email. Andernfalls erhalten Sie die Berechtigung, abgelehnt.
    • 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

Sie gewähren Hauptkonten Rollen, um ihren Zugriff auf Cloud Data Fusion-Ressourcen zu ändern.

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 Rolle „Entwickler“ (datafusion.developer) können Hauptkonten ein und Löschen von Pipelines, Bereitstellen und Ausführen von Vorschauen.

Umfang

Der Bereich umfasst die 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 einer Entwicklerrolle nur für einen Namespace zuweisen möchten.

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 Berechtigungen gewähren, indem es mithilfe der REST API.
  • Die Instanzadministrator-Rolle sollte nicht zugewiesen 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 Instanzzugriff kann zuerst zugewiesen werden, da sie den Zugriff von Hauptkonten 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. Beispiel: Nutzer von täglichen Berichten, die wissen möchten, ob die Verarbeitung abgeschlossen wurde.
  • Die Rolle „Entwickler“ wird für ETL-Entwickler empfohlen, die für Erstellen, Testen und Verwalten von Pipelines.
  • Die Operatorrolle für einen Namespace wird für Nutzer empfohlen, die Vorgangsadministrator- oder DevOps-Dienste bereitstellen. Sie können alle Aktionen, die Entwickler ausführen können (außer für Vorschauen von Pipelines) und Außerdem können sie Artefakte bereitstellen und Rechenprofile 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 Seitenbereich erfahren Sie, wie Sie Probleme mit RBAC in Cloud Data Fusion.

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-Rollen 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

In Cloud Data Fusion gibt es ein bekanntes Problem, bei dem Nutzer mit der Rolle „Instanzadministrator“ keine Instanzen in der Google Cloud Console sehen können. Um das Problem zu beheben, weisen Sie dem Hauptkonto entweder die Rolle Projektbetrachter oder eine der Cloud Data Fusion-IAM-Rollen zu und machen Sie es zum Administrator einer Instanz. Dadurch erhält der Betrachter Lesezugriff auf das Hauptkonto für alle Instanzen im Projekt.

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

Um zu verhindern, dass ein Hauptkonto Namespaces anzeigt, für die es keine Rolle hat, darf nicht die Projektbetrachter oder einer der Cloud Data Fusion-IAM-Rollen. Weisen Sie stattdessen dem Hauptkonto nur RBAC-Rollen im Namespace zu, in dem es ausgeführt werden soll.

Der Nutzer mit dieser Art von Zugriff sieht die Liste der Cloud Data Fusion-Instanzen nicht in der Google Cloud Console. Geben Sie stattdessen einen direkten Link zur Instanz an, z. B.: https://INSTANCE_NAME-PROJECT_ID.REGION_NAME.datafusion.googleusercontent.com/

Wenn das Hauptkonto die Instanz öffnet, wird in Cloud Data Fusion eine Liste der Namespaces angezeigt, in denen dem Hauptkonto eine RBAC-Rolle zugewiesen ist.

Einem Hauptkonto die Rolle „Auf Cloud Data Fusion zugreifende Person“ zuweisen

Die Rolle „Auf Cloud Data Fusion zugreifende Person“ wird einem Hauptkonto implizit zugewiesen, wenn ihm eine andere RBAC-Rolle für eine Cloud Data Fusion-Instanz zugewiesen wird. Ob ein Nutzer diese Rolle für eine bestimmte Instanz hat, können Sie mit dem IAM Policy Analyzer prüfen.

Nächste Schritte