Rôles et autorisations RBAC

Cette page décrit les rôles et les autorisations utilisés par Cloud Data Fusion des instances avec contrôle des accès basé sur les rôles (RBAC) activé.

Pour une application plus précise des accès au niveau de l'espace de noms et à un niveau inférieur, utilisez ces les ressources et autorisations de plan de données avec RBAC.

Hiérarchie des ressources

Les ressources Cloud Data Fusion ont la hiérarchie de ressources suivante:

Hiérarchie des ressources du projet Cloud Data Fusion

Cette figure montre la hiérarchie des ressources par ordre décroissant (de la plus large à le plus restreint): projet Google Cloud, emplacement, instance Cloud Data Fusion et et plusieurs espaces de noms. Sous les espaces de noms se trouvent les connexions, les clés sécurisées, les pipelines, les artefacts (plug-ins, pilotes et applications, par exemple) et les ressources profils.

Les ressources suivantes sont des ressources de plan de données Cloud Data Fusion que vous contrôlez avec l'API REST ou dans Cloud Data Fusion Studio : espaces de noms, connexions, clés sécurisées, pipelines, artefacts et profils de calcul.

Rôles prédéfinis pour RBAC

Cloud Data Fusion RBAC inclut plusieurs rôles prédéfinis que vous pouvez utiliser :

Rôle d'accès à l'instance (datafusion.accessor)
Accorde au compte principal un accès à une instance Cloud Data Fusion, mais pas à à toutes les ressources de l'instance. Utilisez ce rôle en association avec d'autres rôles spécifiques à un espace de noms pour fournir un accès précis à l'espace de noms.
Rôle Lecteur (datafusion.viewer)
Accorde à un compte principal l'accès à un espace de noms pour afficher les pipelines, mais pas pour créer ou exécuter des pipelines.
Rôle d'opérateur (datafusion.operator)
Accorde à un compte principal d'un espace de noms l'accès aux pipelines et leur exécution. modifier le profil de calcul, créer des profils de calcul ou importer des artefacts. Peut effectuer les mêmes actions qu'un développeur, à l'exception des pour prévisualiser les pipelines.
Rôle de développeur (datafusion.developer)
Accorde l'accès à un compte principal sur un espace de noms pour créer et modifier des accès aux ressources, telles que les pipelines, dans l'espace de noms.
Rôle Éditeur (datafusion.editor)
Accorde au compte principal l'accès complet à toutes les ressources Cloud Data Fusion sous un espace de noms dans une instance Cloud Data Fusion. Ce rôle doit doit être accordé au compte principal, en plus du rôle Accesseur d'instances. Avec ce rôle, le compte principal peut créer, supprimer et modifier les ressources espace de noms.
Rôle d'administrateur d'instances (datafusion.admin)
Accorde l'accès à toutes les ressources d'une instance Cloud Data Fusion. Attribué via IAM. Non attribué au niveau de l'espace de noms via RBAC.
Operation datafusion.accessor datafusion.viewer datafusion.operator datafusion.developer datafusion.editor datafusion.admin
Instances
Instance d'accès
Espaces de noms
Créer un espace de noms *
Accès à l'espace de noms avec accès explicite accordé
Accéder à un espace de noms sans autorisation d'accès explicite *
Modifier l'espace de noms
Supprimer l'espace de noms
Compte de service de l'espace de noms
Ajouter un compte de service
Modifier le compte de service
Supprimer le compte de service
Utiliser un compte de service
CABR
Accorder ou révoquer des autorisations pour d'autres comptes principaux de l'espace de noms *
Programmations
Créer une planification
Afficher le calendrier
Modifier la programmation
Compute profiles
Créer des profils de calcul
Afficher les profils de calcul
Modifier les profils de calcul
Supprimer des profils de calcul
Connexions
Créer des connexions
Afficher les connexions
Modifier les connexions
Supprimer des connexions
Utiliser des connexions
Pipelines
Créer des pipelines
Afficher les pipelines
Modifier les pipelines
Supprimer les pipelines
Prévisualiser les pipelines
Déployer des pipelines
Exécuter des pipelines
Clés sécurisées
Créer des clés sécurisées
Afficher les clés sécurisées
Supprimer les clés sécurisées
Tags
Créer des tags
Afficher les tags
Supprimer les tags
Cloud Data Fusion Hub
Déployer des plug-ins
Gestion du contrôle des sources
Configurer un dépôt de contrôle des sources
Synchroniser des pipelines à partir d'un espace de noms
Lignée
Afficher la traçabilité
Journaux
Voir les journaux

* Le principal doit disposer du rôle IAM Administrateur Data Fusion, et non du rôle RBAC Administrateur d'instance.

Pour obtenir la liste complète des autorisations incluses dans le rôle prédéfini de Cloud Data Fusion, consultez la section Rôles prédéfinis de Cloud Data Fusion.

Rôles personnalisés pour le contrôle RBAC

Certains cas d'utilisation ne peuvent pas être mis en œuvre à l'aide des rôles prédéfinis pour Cloud Data Fusion. Dans ce cas, créez un rôle personnalisé.

Examples

Les exemples suivants décrivent comment créer des rôles personnalisés pour le RBAC :

  • Pour créer un rôle personnalisé qui n'autorise que l'accès aux clés sécurisées d'un espace de noms, créez un rôle personnalisé avec les autorisations datafusion.namespaces.get et datafusion.secureKeys.*.

  • Pour créer un rôle personnalisé qui accorde un accès en lecture seule aux clés sécurisées, créez un un rôle personnalisé avec datafusion.namespaces.get, datafusion.secureKeys.getSecret et datafusion.secureKeys.list autorisations.

Autorisations pour les actions courantes

Une seule autorisation prédéfinie peut ne pas être suffisante pour effectuer l'opération l'action correspondante. Par exemple, pour mettre à jour les propriétés d'un espace de noms, vous devrez peut-être également disposer de l'autorisation datafusion.namespaces.get. Le tableau suivant décrit les actions courantes effectuées dans une instance Cloud Data Fusion et les autorisations IAM requises :

Action Autorisation requise
Accéder à une instance datafusion.instances.get
Créer un espace de noms datafusion.namespaces.create
Obtenir un espace de noms datafusion.namespaces.get
Mettre à jour les métadonnées d'un espace de noms (telles que les propriétés)
  • datafusion.namespaces.get
  • datafusion.namespaces.update
Supprimer l'espace de noms (uniquement lorsque la réinitialisation irréversible est activée)
  • datafusion.namespaces.get
  • datafusion.namespaces.delete
Afficher les autorisations sur l'espace de noms datafusion.namespaces.getIamPolicy
Accorder des autorisations sur un espace de noms datafusion.namespaces.setIamPolicy
Extraire les pipelines de la configuration SCM de l'espace de noms
  • datafusion.namespaces.get
  • datafusion.namespaces.readRepository
  • datafusion.pipelines.create
Transférer les pipelines vers le dépôt SCM pour l'espace de noms
  • datafusion.namespaces.get
  • datafusion.namespaces.writeRepository
Obtenir la configuration SCM de l'espace de noms datafusion.namespaces.get
Mettre à jour la configuration SCM de l'espace de noms datafusion.namespaces.updateRepositoryMetadata
Définir un compte de service pour un espace de noms
  • datafusion.namespaces.get
  • datafusion.namespaces.setServiceAccount
Définir un compte de service pour un espace de noms
  • datafusion.namespaces.get
  • datafusion.namespaces.unsetServiceAccount
Provisionner des identifiants de compte de service pour un espace de noms datafusion.namespaces.provisionCredential
Afficher un brouillon de pipeline datafusion.namespaces.get
Créer/Supprimer un brouillon de pipeline
  • datafusion.namespaces.get
  • datafusion.namespaces.update
Répertorier les profils de calcul datafusion.profiles.list
Créer un profil de calcul datafusion.profiles.create
Afficher un profil de calcul datafusion.profiles.get
Modifier un profil de calcul datafusion.profiles.update
Supprimer un profil de calcul datafusion.profiles.delete
Créez un lien
  • datafusion.namespaces.get
  • datafusion.pipelineConnections.create
Afficher une connexion
  • datafusion.namespaces.get
  • datafusion.pipelineConnections.get
Modifier une connexion
  • datafusion.namespaces.get
  • datafusion.pipelineConnections.update
Supprimer une connexion
  • datafusion.namespaces.get
  • datafusion.pipelineConnections.delete
Parcourir, consulter ou afficher les spécifications de connexion
  • datafusion.namespaces.get
  • datafusion.pipelineConnections.use
Répertorier les pipelines datafusion.namespaces.get
Créer un pipeline
  • datafusion.namespaces.get
  • datafusion.pipelines.create
Afficher le pipeline
  • datafusion.namespaces.get
  • datafusion.pipelines.get
Modifier le pipeline
  • datafusion.namespaces.get
  • datafusion.pipelines.create
Modifier les propriétés du pipeline
  • datafusion.namespaces.get
  • datafusion.pipelines.update
Supprimer le pipeline
  • datafusion.namespaces.get
  • datafusion.pipelines.delete
Pipeline Preview datafusion.pipelines.preview
Exécuter le pipeline datafusion.pipelines.execute
Créer une planification datafusion.pipelines.execute
Afficher le calendrier
  • datafusion.namespaces.get
  • datafusion.pipelines.get
Modifier le calendrier datafusion.pipelines.execute
Répertorier les clés de sécurité
  • datafusion.namespaces.get
  • datafusion.secureKeys.list
Créer des clés sécurisées
  • datafusion.namespaces.get
  • datafusion.secureKeys.update
Afficher les clés de sécurité
  • datafusion.namespaces.get
  • datafusion.secureKeys.getSecret
Supprimer des clés sécurisées
  • datafusion.namespaces.get
  • datafusion.secureKeys.delete
Lister les artefacts*
  • datafusion.namespaces.get
  • datafusion.artifacts.list
Créer un artefact*
  • datafusion.namespaces.get
  • datafusion.artifacts.create
  • datafusion.artifacts.update
Obtenir un artefact*
  • datafusion.namespaces.get
  • datafusion.artifacts.get
Supprimer un artefact*
  • datafusion.namespaces.get
  • datafusion.artifacts.delete
Préférences, tags et métadonnées Les préférences, les balises et les métadonnées sont définies au niveau de la ressource pour la ressource en question (datafusion.RESOURCE.update).
Autorisations d'ensemble de données (obsolète) datafusion.namespaces.update

* Les artefacts, tels que les plug-ins et les pilotes, sont des éléments que vous importez dans Cloud Data Fusion pour développer des pipelines.

Étape suivante