La modalità act-as rigorosa attiva un controllo di sicurezza aggiuntivo per le seguenti azioni utente in Dataform:
- Creazione o aggiornamento di un repository
- Creazione o aggiornamento di una configurazione del flusso di lavoro
- Creazione di un'invocazione del flusso di lavoro
- Aggiornamento di una configurazione di release
Questo controllo di sicurezza aggiuntivo richiede che l'utente che esegue queste azioni abbia l'autorizzazione iam.serviceAccounts.actAs
per l'account di servizio effettivo, ovvero l'account di servizio di cui vengono utilizzate le credenziali per eseguire i flussi di lavoro. Per ulteriori informazioni sui service account, consulta
Collegare i service account alle risorse.
Puoi attivare questa modalità nei seguenti modi:
- Quando crei un repository
- Durante l'aggiornamento di un repository esistente con il flag
strict_act_as_checks
repository
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per completare le attività in questo documento, chiedi all'amministratore di concederti il ruolo IAM Utente account di servizio (roles/iam.serviceAccountUser
) nell'account di servizio personalizzato.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Determinare l'account di servizio effettivo
Puoi determinare il account di servizio effettivo che esegue i flussi di lavoro in base al tipo di risorsa e alle seguenti condizioni:
Tipo di risorsa | Service account effettivo |
---|---|
Repository | Se selezioni un account di servizio quando crei il repository, viene utilizzato l'account di servizio In caso contrario, viene utilizzato per impostazione predefinita l'account di servizio Dataform. |
Configurazione del workflow | Puoi selezionare un account di servizio quando crei la configurazione del flusso di lavoro. In caso contrario, viene utilizzato per impostazione predefinita l'account di servizio Dataform del repository. |
Richiamo del flusso di lavoro | Se il risultato della compilazione è Se crei un'invocazione del flusso di lavoro da un risultato di compilazione, viene utilizzato l'account di servizio In caso contrario, viene utilizzato per impostazione predefinita l'account di servizio Dataform del repository. |
Concedi il ruolo IAM Utente account di servizio
Il ruolo Utente account di servizio (roles/iam.serviceAccountUser
) contiene l'autorizzazione iam.serviceAccounts.actAs
, necessaria per la modalità act-as rigorosa. Quando utilizzi l'API Dataform, devi aver concesso il ruolo Utente account di servizio per l'account di servizio effettivo in base al metodo projects.locations.repositories
che stai chiamando:
create
opatch
- Se la proprietà
Repository.ServiceAccount
è impostata, devi aver concesso il ruolo Utente account di servizio per quella proprietà. - Se chiami il metodo
patch
, devi aver concesso il ruolo Utente account di servizio per tutti gli account di servizio effettivi in tutte le configurazioni del flusso di lavoro nel repository.
- Se la proprietà
workflowConfigs.create
oworkflowConfigs.patch
- Devi aver concesso il ruolo Utente account di servizio per l'account di servizio effettivo utilizzato nella configurazione del flusso di lavoro.
releaseConfigs.patch
- Devi aver concesso il ruolo Utente account di servizio a tutti gli account di servizio effettivi utilizzati nelle configurazioni dei flussi di lavoro che utilizzano questa configurazione di release.
workflowInvocations.create
- Devi aver concesso il ruolo Utente account di servizio per l'account di servizio effettivo utilizzato nell'invocazione del workflow.
Per ulteriori informazioni, consulta i ruoli richiesti per la creazione di una configurazione di flusso di lavoro e i ruoli richiesti per la creazione di una configurazione di release.
Release automatiche per i repository
Quando la modalità act-as è attivata, le release automatiche sono disabilitate per le configurazioni di release del repository Dataform. Questo non si applica ai repository collegati a repository di terze parti.
Inoltre, se attivi la modalità act-as, vengono eseguiti controlli nel repository per verificare se è impostata una configurazione di rilascio automatico utilizzando la pianificazione di Cron. Questo non si applica ai repository collegati a repository di terze parti.
Passaggi successivi
- Per scoprire di più su come creare un repository, consulta Creare un repository.
- Per scoprire come creare una configurazione del flusso di lavoro, consulta Pianificare le esecuzioni.
- Per scoprire come creare una configurazione della release, consulta Configurare le compilazioni.