Accorder des autorisations utilisateur au compte de service

Cette page explique comment attribuer le rôle Dataproc Utilisateur du compte de service à Cloud Data Fusion pour lui permettre de provisionner et d'exécuter des pipelines sur des clusters Dataproc.

Pour les comptes de service utilisés par Dataproc, vous devez également accorder l'autorisation d'accès à datafusion.instances.runtime Ressources d'exécution Cloud Data Fusion.

Que vous utilisiez un compte de service géré par l'utilisateur ou le compte de service Compute Engine par défaut sur les machines virtuelles d'un cluster, vous devez attribuer le rôle "Utilisateur du compte de service" à Cloud Data Fusion. Sinon, Cloud Data Fusion ne peut pas provisionner un cluster Dataproc et l'erreur suivante s'affiche lorsque vous exécutez un pipeline de données :

PROVISION task failed in REQUESTING_CREATE state for program run [pipeline-name] due to Dataproc operation failure: INVALID_ARGUMENT: User not authorized to act as service account '[service-account-name]'

Obtenir le nom du compte de service

  1. Dans la console Google Cloud, accédez à la page "Identity and Access Management".
    Accéder à la page "IAM"
  2. Dans le sélecteur de projet en haut de la page, sélectionnez le projet, le dossier ou l'organisation auxquels appartient l'instance Cloud Data Fusion.
  3. Recherchez et copiez le compte de service Cloud Data Fusion. son nom. Utilisez le format suivant : service-[project-number]@gcp-sa-datafusion.iam.gserviceaccount.com.

Accorder l'autorisation Utilisateur du compte de service

  1. Dans Google Cloud Console, accédez à la page Comptes de service.
    Accéder à la page Comptes de service
  2. Cliquez sur Sélectionner un projet, puis choisissez le projet dans lequel le compte de service que vous souhaitez utiliser pour le cluster Dataproc, cliquez sur Ouvrir.
  3. Cliquez sur l'adresse e-mail du compte de service Dataproc.

    .
  4. Cliquez sur l'onglet Autorisations. La page affiche la liste des comptes principaux des rôles ont été attribués au compte de service.

  5. Cliquez sur Accorder l'accès.

  6. Dans le champ Nouveaux comptes principaux, collez le nom du compte de service Cloud Data Fusion que vous avez copié précédemment.

  7. Sélectionnez le rôle Utilisateur de compte de service.

    Utilisateur du compte de service

  8. Cliquez sur Enregistrer.

Attribuer des rôles aux comptes de service Dataproc

Accorder l'autorisation de rôle de coureur

Attribuez le rôle d'exécuteur Cloud Data Fusion. (roles/datafusion.runner) aux comptes de service utilisés par Dataproc. Le service Dataproc est ainsi autorisé pour exécuter des pipelines Cloud Data Fusion dans votre projet. Pour en savoir plus, consultez Exiger l'autorisation de rattacher des comptes de service aux ressources.

Accorder une autorisation d'administrateur Cloud Storage

Dans Cloud Data Fusion version 6.2.0 et ultérieure, attribuez le rôle Administrateur Cloud Storage (roles/storage.admin) aux comptes de service utilisés par Dataproc dans votre projet.

Étape suivante