Controlli di servizio VPC è una funzionalità di Google Cloud che ti consente di impostare un perimetro che aiuti a proteggerti dall'esfiltrazione di dati. Questa guida mostra come utilizzare Controlli di servizio VPC con Dataform per per rendere i tuoi servizi più sicuri.
I Controlli di servizio VPC forniscono un ulteriore livello di protezione ai servizi Google Cloud indipendenti dalla protezione fornita da Identity and Access Management (IAM).
Per saperne di più sui Controlli di servizio VPC, consulta Panoramica dei Controlli di servizio VPC.
Limitazioni
Dataform supporta i Controlli di servizio VPC con limitazioni:
Devi impostare il parametro
dataform.restrictGitRemotes
criterio dell'organizzazione.Dataform e BigQuery devono essere limitati dallo stesso Perimetro di servizio Controlli di servizio VPC.
Considerazioni sulla sicurezza
Quando configuri un perimetro dei Controlli di servizio VPC per Dataform, è necessario esaminare le autorizzazioni concesse al servizio Dataform e assicurarti che corrispondano all'architettura di sicurezza.
In base alle autorizzazioni concesse a un account di servizio Dataform, questo account di servizio potrebbe avere accesso a BigQuery i dati di Secret Manager nel progetto a cui appartiene l'account di servizio, indipendentemente dai Controlli di servizio VPC. In tal caso, limitazione di Dataform con un perimetro dei Controlli di servizio VPC non blocca la comunicazione con BigQuery o Secret Manager.
Dovresti bloccare la comunicazione con BigQuery se non ti serve eseguire qualsiasi chiamata al flusso di lavoro proveniente dai repository Dataform. Per ulteriori informazioni su come bloccare le comunicazioni con BigQuery, vedi Bloccare la comunicazione con BigQuery.
Devi bloccare le comunicazioni con Secret Manager se nessuno dei tuoi I repository Dataform si connettono a un repository Git di terze parti. Per saperne di più su come bloccare le comunicazioni con Secret Manager, consulta Bloccare le comunicazioni con Secret Manager.
Prima di iniziare
Prima di configurare un perimetro di servizio Controlli di servizio VPC
Dataform, segui le
Guida alla limitazione dei repository remoti
per impostare il criterio dell'organizzazione dataform.restrictGitRemotes
.
Il criterio dell'organizzazione dataform.restrictGitRemotes
è necessario per garantire
che i controlli dei Controlli di servizio VPC siano applicati quando
Dataform e l'accesso di terze parti al Git Dataform
repository è soggetta a restrizioni.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per configurare un perimetro di servizio dei Controlli di servizio VPC,
chiedi all'amministratore di concederti
Ruolo IAM Editor Gestore contesto accesso (roles/accesscontextmanager.policyEditor
) nel progetto.
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite la ruoli o altri ruoli predefiniti ruoli.
Per ulteriori informazioni sulle autorizzazioni dei Controlli di servizio VPC, consulta Controllo dell'accesso con IAM.
Configurazione dei Controlli di servizio VPC
Puoi limitare Dataform con un perimetro di servizio Controlli di servizio VPC nei seguenti modi:
- Aggiungi Dataform a un perimetro di servizio esistente che limita in BigQuery.
- Crea un perimetro di servizio che limiti sia Dataform e BigQuery.
Per aggiungere Dataform a un perimetro di servizio che limita BigQuery, segui le Aggiornare un perimetro di servizio disponibile nella documentazione su Controlli di servizio VPC.
Per creare un nuovo perimetro di servizio che limiti sia Dataform e BigQuery, seguiranno Crea un perimetro di servizio disponibile nella documentazione su Controlli di servizio VPC.
(Facoltativo) Bloccare la comunicazione con BigQuery
Il modo in cui Dataform comunica con BigQuery dipende il tipo di account di servizio utilizzato in Dataform.
L'account di servizio Dataform predefinito utilizza bigquery.jobs.create
per comunicare con BigQuery. Concedere l'accesso
Ruoli dell'account di servizio Dataform che
questa autorizzazione quando concedi i ruoli richiesti
Dataform per eseguire flussi di lavoro SQL in BigQuery.
Bloccare la comunicazione tra l'account di servizio Dataform predefinito
e BigQuery, devi revocare tutti i ruoli predefiniti e personalizzati
contenenti l'autorizzazione bigquery.jobs.create
, che è stata concessa a
l'account di servizio Dataform predefinito. Per revocare i ruoli, segui le
Gestire l'accesso a progetti, cartelle e organizzazioni
guida.
gli account di servizio Dataform personalizzati utilizzano autorizzazioni e ruoli per comunicare con BigQuery:
- L'autorizzazione
bigquery.jobs.create
assegnata all'account di servizio personalizzato. - il ruolo Creatore token account di servizio (
roles/iam.serviceAccountTokenCreator
), all'account di servizio Dataform predefinito nell'account di servizio personalizzato.
Puoi bloccare la comunicazione tra un servizio Dataform personalizzato e BigQuery in uno dei seguenti modi:
Revoca il Creatore token account di servizio (
roles/iam.serviceAccountTokenCreator
) ruolo concesso all'account di servizio predefinito sull'account di servizio Dataform personalizzato selezionato. Per revocare il Creatore token account di servizio (roles/iam.serviceAccountTokenCreator
) segui le Gestire l'accesso agli account di servizio guida.Revoca tutti i ruoli predefiniti e personalizzati concessi a livello di progetto all'account account di servizio personalizzato che contengono l'elemento
bigquery.jobs.create
autorizzazione. Per revocare i ruoli, segui le Gestire l'accesso a progetti, cartelle e organizzazioni guida.
L'autorizzazione bigquery.jobs.create
è inclusa in quanto segue
ruoli IAM BigQuery predefiniti
che devono essere revocati:
- Amministratore BigQuery (
roles/bigquery.admin
) - Utente job BigQuery (
roles/bigquery.jobUser
) - Utente BigQuery (
roles/bigquery.user
) - Amministratore BigQuery Studio (
roles/bigquery.studioAdmin
) - Utente BigQuery Studio (
roles/bigquery.studioUser
)
(Facoltativo) Blocca la comunicazione con Secret Manager
Dataform utilizza l'autorizzazione secretmanager.versions.access
per
per accedere ai singoli secret di Secret Manager. Concedi questa autorizzazione
all'account di servizio Dataform predefinito su un modello
il secret di Secret Manager
connettere un repository Dataform a un repository di terze parti.
Per bloccare la comunicazione tra Dataform e Secret Manager, devi revocare l'accesso a tutti i secret dal modulo Dataform predefinito l'account di servizio.
Per revocare l'accesso predefinito a un secret di Secret Manager
Account di servizio Dataform,
segui le istruzioni della sezione Gestire l'accesso ai secret
guida nella documentazione di Secret Manager. Devi revocare tutti
predefiniti e personalizzati che contengono
Autorizzazione secretmanager.versions.access
concessa al valore predefinito
Account di servizio Dataform sul secret selezionato.
L'autorizzazione secretmanager.versions.access
è inclusa in quanto segue
ruoli IAM di Secret Manager predefiniti:
- Amministratore Secret Manager (
roles/secretmanager.admin
) - Funzione di accesso ai secret di Secret Manager (
roles/secretmanager.secretAccessor
) - Gestore della versione del secret di Secret Manager (
roles/secretmanager.secretVersionManager
)
Passaggi successivi
- Per saperne di più sui Controlli di servizio VPC, consulta Panoramica dei Controlli di servizio VPC.
- Per scoprire di più sul criterio dell'organizzazione, vedi Introduzione al servizio Criteri dell'organizzazione.
- Per scoprire di più sugli account di servizio in Dataform, consulta Informazioni sugli account di servizio in Dataform.