Concedi l'accesso richiesto a Dataform

Questo documento mostra come concedere i ruoli IAM (Identity and Access Management) richiesti da Dataform per eseguire flussi di lavoro in BigQuery.

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:

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:

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

  1. Nella console Google Cloud, vai alla pagina Dataform.

    Vai alla pagina Dataform

  2. 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:

  1. Nella console Google Cloud, vai alla pagina IAM.

    Vai alla pagina IAM

  2. Fai clic su Concedi l'accesso.

  3. Nel campo Nuove entità, inserisci la o l'ID account di servizio.

  4. Nell'elenco a discesa Seleziona un ruolo, seleziona la Ruolo Utente job BigQuery.

  5. Fai clic su Aggiungi un altro ruolo e poi nell'elenco a discesa Seleziona un ruolo seleziona il ruolo Editor dati BigQuery.

  6. Fai clic su Aggiungi un altro ruolo e poi nell'elenco a discesa Seleziona un ruolo seleziona il ruolo Visualizzatore dati BigQuery.

  7. 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:

  1. Nella console Google Cloud, vai a IAM > Account di servizio.

    Vai alla pagina Account di servizio

  2. Seleziona un progetto.

  3. Nella pagina Account di servizio per il progetto "YOUR_PROJECT_NAME", seleziona il tuo account di servizio Dataform personalizzato.

  4. Vai ad Autorizzazioni e fai clic su Concedi l'accesso.

  5. 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
    
  6. Nell'elenco a discesa Seleziona un ruolo, seleziona la Creatore token account di servizio.

  7. Fai clic su Salva.

Passaggi successivi