Dienstkonten in Dataform
Wenn Sie Ihr erstes Dataform-Repository erstellen, wird automatisch ein Standarddienstkonto erstellt. Dataform verwendet die Standarddienstkonto, um in Ihrem Namen mit BigQuery zu interagieren. Dem Dataform-Standarddienstkonto wurden keine Berechtigungen gewährt BigQuery-Rollen oder -Berechtigungen. Sie müssen den erforderlichen Zugriff auf das Dataform-Standarddienstkonto.
Ihre standardmäßige Dataform-Dienstkonto-ID hat das folgende Format:
service-YOUR_PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
Ersetzen Sie YOUR_PROJECT_NUMBER durch die numerische ID Ihrer Google Cloud-Projekt Ihre Google Cloud-Projekt-ID finden Sie in der Dashboard der Google Cloud Console Weitere Informationen finden Sie unter Projekte identifizieren.
Neben dem Dataform-Standarddienstkonto können Sie Folgendes verwenden: andere Dienstkonten verwenden, um Workflows in Ihrem Namen auszuführen. Sie können benutzerdefinierte Dienstkonten:
Auf Repository-Ebene, um alle Workflows in einem bestimmten Repository zu testen.
Einzeln für jede Workflowkonfiguration.
Wenn Sie ein Dataform-Repository oder eine Workflowkonfiguration erstellen, können Sie Wählen Sie ein mit Ihrem Google Cloud-Projekt verknüpftes Dienstkonto aus auf die Sie zugreifen können. Sie müssen die erforderlichen Berechtigungen für alle Dienstkonten konfigurieren die mit Ihren Dataform-Ressourcen verknüpft sind.
Ein benutzerdefiniertes Dienstkonto, das mit einem Dataform verknüpft ist Repository wird nur zum Ausführen von Workflows aus diesem Repository verwendet. Alle anderen Repository-Vorgänge werden weiterhin vom standardmäßigen Dataform ausgeführt Dienstkonto.
Erforderliche Rollen für Dataform-Dienstkonten
Für Standard- und benutzerdefinierte Dienstkonten, die in Dataform verwendet werden, ist die BigQuery-IAM-Rollen haben, Workflows in BigQuery:
- BigQuery-Dateneditor für Projekte, auf die Dataform Lese- und Schreibzugriff benötigt. Sie enthalten in der Regel das Projekt, das Ihr Dataform-Repository hostet.
- BigQuery-Datenbetrachter für Projekte, auf die Dataform Lesezugriff benötigt.
- BigQuery-Jobnutzer für das Projekt, das Ihr Dataform-Repository hostet.
- BigQuery-Dateninhaber wenn Sie BigQuery-Datasets abfragen möchten.
- BigQuery-Rollen für die Zugriffssteuerung auf Spaltenebene, wenn Sie BigQuery-Richtlinien-Tags verwenden möchten.
Außerdem müssen Sie das Dataform-Standarddienstkonto gewähren
Ersteller von Dienstkonto-Token(roles/iam.serviceAccountTokenCreator
)
Zugriff auf alle benutzerdefinierten Dienstkonten,
die Sie in Dataform verwenden möchten.
Sicherheitsaspekte für Dataform-Dienstkonten
Einem Dienstkonto die von Dataform erforderlichen Rollen zuweisen sind mit den folgenden Sicherheitsaspekten verbunden:
Jedes Dienstkonto, dem die erforderlichen Rollen gewährt wurden, kann Zugriff auf BigQuery oder Secret Manager im Projekt dieses Dienstkontos unabhängig von VPC Service Controls.
Weitere Informationen finden Sie unter VPC Service Controls für Dataform konfigurieren
Jeder Nutzer mit dem IAM
dataform.repositories.create
Berechtigung kann Code mit dem Dataform-Standarddienst ausführen Konto und alle Berechtigungen, die diesem Dienstkonto gewährt wurden.Weitere Informationen finden Sie unter Sicherheitsaspekte für Dataform-Berechtigungen.
Um die Daten einzuschränken, die ein Nutzer oder ein Dienstkonto lesen oder schreiben kann können Sie in BigQuery detaillierte BigQuery-IAM-Berechtigungen auf ausgewählte BigQuery-Datasets oder -Tabellen. Weitere Informationen finden Sie unter Zugriff auf Datasets steuern und Zugriff auf Tabellen und Ansichten steuern
Hinweise
Öffnen Sie in der Google Cloud Console die Seite Dataform.
Wählen Sie ein Repository aus oder erstellen Sie ein Repository.
Dienstkonto in Dataform die erforderlichen BigQuery-Rollen gewähren
So weisen Sie Ihrem Konto die erforderlichen BigQuery-IAM-Rollen zu: Dataform-Standarddienstkonto oder ein benutzerdefiniertes Dienstkonto die Sie in Dataform verwenden möchten, gehen Sie so vor:
Öffnen Sie in der Google Cloud Console die Seite IAM.
Klicken Sie auf Zugriff erlauben.
Geben Sie in das Feld Neue Hauptkonten den Dienstkonto-ID.
Wähle in der Drop-down-Liste Rolle auswählen die gewünschte Rolle aus. BigQuery-Jobnutzer.
Klicken Sie auf Weitere Rolle hinzufügen und wählen Sie dann in der Drop-down-Liste Rolle auswählen Folgendes aus: Wählen Sie die Rolle BigQuery-Dateneditor aus.
Klicken Sie auf Weitere Rolle hinzufügen und wählen Sie dann in der Drop-down-Liste Rolle auswählen Folgendes aus: Wählen Sie die Rolle BigQuery-Datenbetrachter aus.
Klicken Sie auf Speichern.
Zugriff auf die Tokenerstellung für ein benutzerdefiniertes Dienstkonto gewähren
Wenn Sie ein benutzerdefiniertes Dienstkonto in Dataform verwenden möchten, ist die Standardeinstellung Das Dataform-Dienstkonto muss auf den benutzerdefinierten Dienst zugreifen können Konto. Um diesen Zugriff zu gewähren, müssen Sie das Standard-Dataform hinzufügen Dienstkonto als Hauptkonto für das benutzerdefinierte Dienstkonto mit der Rolle Ersteller von Dienstkonto-Tokens:
So gewähren Sie dem Dataform-Standarddienstkonto Zugriff auf ein benutzerdefiniertes Dienstkonto besteht, gehen Sie so vor:
Rufen Sie in der Google Cloud Console IAM auf. Dienstkonten:
Wählen Sie ein Projekt aus.
Gehen Sie auf der Seite Dienstkonten für Projekt „YOUR_PROJECT_NAME“ so vor: und wählen Sie Ihr benutzerdefiniertes Dataform-Dienstkonto aus.
Gehen Sie zu Berechtigungen und klicken Sie dann auf Zugriff gewähren.
Geben Sie im Feld Neue Hauptkonten Ihr Standard-Dataform-Objekt ein Dienstkonto-ID.
Ihre standardmäßige Dataform-Dienstkonto-ID hat das folgende Format:
service-YOUR_PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
Wähle in der Drop-down-Liste Rolle auswählen die gewünschte Rolle aus. Rolle Ersteller von Dienstkonto-Tokens:
Klicken Sie auf Speichern.
Nächste Schritte
- Weitere Informationen zu BigQuery-IAM-Rollen und finden Sie unter Zugriffssteuerung mit IAM.
- Weitere Informationen zum Gewähren detaillierter Berechtigungen für BigQuery Datasets finden Sie unter Zugriff auf Datasets steuern.
- Weitere Informationen zum Gewähren detaillierter Berechtigungen für BigQuery finden Sie unter Zugriff auf Tabellen und Ansichten steuern.
- Informationen zum Steuern des Dataform-Zugriffs mit VPC Service Controls finden Sie unter VPC Service Controls für Dataform konfigurieren