Utiliser le mode d'action en tant que strict

Le mode d'action en tant que strict permet d'effectuer une vérification de sécurité supplémentaire pour les actions utilisateur suivantes dans Dataform :

  • Créer ou mettre à jour un dépôt
  • Créer ou mettre à jour une configuration de workflow
  • Créer une invocation de workflow
  • Mettre à jour une configuration de version

Cette vérification de sécurité supplémentaire exige que l'utilisateur effectuant ces actions dispose de l'autorisation iam.serviceAccounts.actAs sur le compte de service effectif, c'est-à-dire le compte de service dont les identifiants sont utilisés pour exécuter les workflows. Pour en savoir plus sur les comptes de service, consultez la section Rattacher des comptes de service à des ressources.

Pour activer ce mode, procédez comme suit :

  • Lorsque vous créez un dépôt
  • Lorsque vous mettez à jour un dépôt existant avec l'indicateur de dépôt strict_act_as_checks

Rôles requis

Pour obtenir les autorisations nécessaires pour effectuer les tâches de ce document, demandez à votre administrateur de vous accorder le rôle IAM Utilisateur du compte de service (roles/iam.serviceAccountUser) sur le compte de service personnalisé. Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.

Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.

Déterminer le compte de service effectif

Vous pouvez déterminer le compte de service effectif qui exécute les workflows en fonction du type de ressource et des conditions suivantes :

Type de ressource Compte de service effectif
Dépôts

Si vous sélectionnez un compte de service lorsque vous créez le dépôt, le compte de service Repository.ServiceAccount est utilisé.

Sinon, le compte de service Dataform est utilisé par défaut.

Configuration du workflow

Vous pouvez sélectionner un compte de service lorsque vous créez la configuration du workflow.

Sinon, le compte de service Dataform du dépôt est utilisé par défaut.

Appel de workflow

Si le résultat de la compilation est WORKFLOW_CONFIG, le compte de service effectif de la configuration du workflow est utilisé.

Si vous créez une invocation de workflow à partir d'un résultat de compilation, le compte de service WorkflowInvocation.InvocationConfig est utilisé s'il est défini.

Sinon, le compte de service Dataform du dépôt est utilisé par défaut.

est activé, vous ne pouvez pas exécuter de workflows avec le compte de service Dataform par défaut.

Attribuer le rôle IAM Utilisateur du compte de service

Le rôle Utilisateur du compte de service (roles/iam.serviceAccountUser) contient l'autorisation iam.serviceAccounts.actAs, qui est requise pour le mode d'exécution strict. Lorsque vous utilisez l'API Dataform, vous devez disposer du rôle "Utilisateur du compte de service" pour le compte de service effectif en fonction de la méthode projects.locations.repositories que vous appelez :

  • create ou patch
    • Si la propriété Repository.ServiceAccount est définie, le rôle Utilisateur du compte de service doit être attribué à cette propriété.
    • Si vous appelez la méthode patch, le rôle Utilisateur du compte de service doit être attribué à tous les comptes de service effectifs dans toutes les configurations de workflow du dépôt.
  • workflowConfigs.create ou workflowConfigs.patch
    • Le rôle "Utilisateur du compte de service" doit être attribué au compte de service effectif utilisé dans la configuration du workflow.
  • releaseConfigs.patch
    • Le rôle "Utilisateur du compte de service" doit être attribué à tous les comptes de service effectifs utilisés dans les configurations de workflow utilisant cette configuration de version.
  • workflowInvocations.create
    • Le rôle "Utilisateur du compte de service" doit être attribué au compte de service effectif utilisé dans l'appel du workflow.

Pour en savoir plus, consultez les rôles requis pour créer une configuration de workflow et les rôles requis pour créer une configuration de version.

Versions automatiques pour les dépôts

Lorsque le mode act-as est activé, les versions automatiques sont désactivées pour les configurations de version du dépôt Dataform. Cela ne s'applique pas aux dépôts connectés à des dépôts tiers.

En outre, si vous activez le mode "act-as", le dépôt est vérifié pour déterminer s'il dispose d'une configuration de publication automatique définie à l'aide de la planification Cron. Cela ne s'applique pas aux dépôts connectés à des dépôts tiers.

Étapes suivantes