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 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 Si vous créez une invocation de workflow à partir d'un résultat de compilation, le compte de service Sinon, le compte de service Dataform du dépôt est utilisé 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
oupatch
- 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.
- Si la propriété
workflowConfigs.create
ouworkflowConfigs.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
- Pour en savoir plus sur la création d'un dépôt, consultez la section Créer un dépôt.
- Pour savoir comment créer une configuration de workflow, consultez la section Planifier des exécutions.
- Pour savoir comment créer une configuration de version, consultez la section Configurer les compilations.