Informazioni sugli account di servizio in Dataform
Quando crei il tuo primo repository Dataform, Dataform genera automaticamente un account di servizio predefinito. Dataform utilizza un account di servizio predefinito per interagire con BigQuery per tuo conto. All'account di servizio Dataform predefinito non viene concesso nessun Ruoli o autorizzazioni BigQuery per impostazione predefinita. Devi concedere le autorizzazioni richieste e l'accesso all'account di servizio Dataform predefinito.
Il tuo ID account di servizio Dataform predefinito è nel seguente formato:
service-YOUR_PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
Sostituisci YOUR_PROJECT_NUMBER con l'ID numerico del tuo progetto Google Cloud. Puoi trovare il tuo ID progetto Google Cloud dashboard della console Google Cloud. Per ulteriori informazioni, vedi Identificazione dei progetti.
Oltre all'account di servizio Dataform predefinito, puoi utilizzare altri account di servizio per eseguire flussi di lavoro per tuo conto. Puoi configurare account di servizio personalizzati:
A livello di repository, per eseguire tutte dei flussi di lavoro in un determinato repository.
Individualmente per ogni configurazione del flusso di lavoro.
Quando crei un repository Dataform o una configurazione del flusso di lavoro, puoi: seleziona un account di servizio associato al tuo progetto Google Cloud di cui disponi a cui accedono. Devi configurare le autorizzazioni richieste per tutti gli account di servizio associate alle tue risorse Dataform.
Un account di servizio personalizzato associato a un Dataform viene utilizzato solo per eseguire flussi di lavoro da quel repository. Tutti gli altri le operazioni del repository vengono comunque eseguite dal Dataform predefinito l'account di servizio.
Ruoli richiesti per gli account di servizio Dataform
Gli account di servizio predefiniti e personalizzati utilizzati in Dataform richiedono i seguenti ruoli IAM BigQuery per poter eseguire flussi di lavoro in BigQuery:
- Editor dati BigQuery sui progetti per i quali Dataform ha bisogno dell'accesso in lettura e in scrittura. Di solito includono il progetto che ospita il repository Dataform.
- Visualizzatore dati BigQuery sui progetti a cui Dataform ha bisogno dell'accesso in sola lettura.
- Utente job BigQuery del progetto che ospita il tuo repository Dataform.
- Proprietario dati BigQuery se vuoi eseguire query su set di dati BigQuery.
- Ruoli BigQuery per il controllo dell'accesso a livello di colonna se vuoi utilizzare i tag di criteri BigQuery.
Inoltre, devi concedere l'account di servizio Dataform predefinito
Creatore token account di servizio(roles/iam.serviceAccountTokenCreator
)
l'accesso a qualsiasi account di servizio personalizzato che vuoi utilizzare in Dataform.
Considerazioni sulla sicurezza per gli account di servizio Dataform
Concessione dei ruoli richiesti da Dataform a un account di servizio comporta le seguenti considerazioni sulla sicurezza:
Qualsiasi account di servizio a cui sono stati concessi i ruoli richiesti potrebbe accedere BigQuery o Secret Manager nel progetto in cui è presente l'account di servizio a cui appartiene, indipendentemente dai Controlli di servizio VPC.
Per ulteriori informazioni, vedi Configura i Controlli di servizio VPC per Dataform.
Qualsiasi utente con IAM
dataform.repositories.create
può eseguire il codice utilizzando il servizio Dataform predefinito e tutte le autorizzazioni concesse a quell'account.Per ulteriori informazioni, vedi Considerazioni sulla sicurezza per le autorizzazioni Dataform.
Per limitare i dati che un account utente o di servizio può leggere o scrivere in BigQuery, puoi concedere autorizzazioni IAM granulari di BigQuery set di dati o tabelle BigQuery. Per ulteriori informazioni, vedi Controllo dell'accesso ai set di dati e Controllo dell'accesso a tabelle e viste.
Prima di iniziare
Nella console Google Cloud, vai alla pagina Dataform.
Seleziona o crea un repository.
Concedi i ruoli BigQuery richiesti a un account di servizio utilizzato in Dataform
Per concedere i ruoli IAM BigQuery richiesti ai tuoi account di servizio Dataform predefinito o un account di servizio personalizzato che vuoi utilizzare in Dataform:
Nella console Google Cloud, vai alla pagina IAM.
Fai clic su Concedi l'accesso.
Nel campo Nuove entità, inserisci la o l'ID account di servizio.
Nell'elenco a discesa Seleziona un ruolo, seleziona la Ruolo Utente job BigQuery.
Fai clic su Aggiungi un altro ruolo e poi nell'elenco a discesa Seleziona un ruolo seleziona il ruolo Editor dati BigQuery.
Fai clic su Aggiungi un altro ruolo e poi nell'elenco a discesa Seleziona un ruolo seleziona il ruolo Visualizzatore dati BigQuery.
Fai clic su Salva.
Concedi l'accesso per la creazione di token a un account di servizio personalizzato
Per utilizzare un account di servizio personalizzato in Dataform, l'impostazione predefinita L'account di servizio Dataform deve essere in grado di accedere al servizio personalizzato . Per concedere questo accesso, devi aggiungere il modulo Dataform predefinito l'account di servizio come entità dell'account di servizio personalizzato con Creatore token account di servizio.
Per concedere all'account di servizio Dataform predefinito l'accesso a un segui questi passaggi:
Nella console Google Cloud, vai a IAM > Account di servizio.
Seleziona un progetto.
Nella pagina Account di servizio per il progetto "YOUR_PROJECT_NAME", seleziona il tuo account di servizio Dataform personalizzato.
Vai ad Autorizzazioni e fai clic su Concedi l'accesso.
Nel campo Nuove entità, inserisci il modulo Dataform predefinito o l'ID account di servizio.
Il tuo ID account di servizio Dataform predefinito è nel seguente formato:
service-YOUR_PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
Nell'elenco a discesa Seleziona un ruolo, seleziona la Creatore token account di servizio.
Fai clic su Salva.
Passaggi successivi
- Per saperne di più sui ruoli IAM di BigQuery e autorizzazioni, consulta Controllo dell'accesso con IAM.
- Per saperne di più sulla concessione di autorizzazioni granulari a BigQuery set di dati, consulta Controllo dell'accesso ai set di dati.
- Per saperne di più sulla concessione di autorizzazioni granulari a BigQuery tabelle e consulta la sezione Controllo dell'accesso a tabelle e visualizzazioni.
- Per scoprire come controllare l'accesso a Dataform con i Controlli di servizio VPC, consulta Configura i Controlli di servizio VPC per Dataform.