In questa pagina vengono descritte le opzioni di controllo dell'accesso in Cloud Data Fusion.
Puoi controllare l'accesso alle risorse in Cloud Data Fusion nelle seguenti modi:
Per controllare l'accesso per le operazioni del piano di controllo, come la creazione e l'aggiornamento delle istanze tramite la console Google Cloud, l'interfaccia a riga di comando Google Cloud e l'API REST, utilizza Identity and Access Management (IAM), come descritto in questa pagina.
Per concedere l'accesso ai servizi dati Google Cloud, come BigQuery o Cloud Storage, a un account di servizio in cui sono in esecuzione le pipeline, utilizza IAM.
Per controllare le autorizzazioni granulari per le azioni eseguite nell'istanza, note come operazioni di data plane, come l'avvio delle pipeline, utilizza il controllo degli accessi basato sui ruoli (RBAC).
Per informazioni sull'architettura e sulle risorse coinvolte nel controllo dell'accesso di Cloud Data Fusion, consulta Networking. Per informazioni sulla concessione di ruoli e autorizzazioni, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Informazioni su IAM in Cloud Data Fusion
Puoi controllare l'accesso alle funzionalità di Cloud Data Fusion concedendo ruoli e autorizzazioni IAM agli account di servizio e ad altri principali nel tuo progetto Google Cloud.
Per concedere l'accesso granulare agli account utente in modo che possano utilizzare l'interfaccia web di Cloud Data Fusion, utilizza la RBAC.
Per impostazione predefinita, Cloud Data Fusion utilizza i seguenti account di servizio:
Account di servizio Cloud Data Fusion
L'account di servizio Cloud Data Fusion è un agente di servizio gestito da Google che può accedere alle risorse del cliente al momento della progettazione della pipeline. Questo agente di servizio viene aggiunto automaticamente a un progetto quando si abilita l'API Cloud Data Fusion. Viene utilizzato per tutte le istanze del progetto.
L'agente di servizio ha le seguenti responsabilità:
Comunicazione con altri servizi, come Cloud Storage, BigQuery o Datastream durante la progettazione della pipeline.
Abilitazione dell'esecuzione mediante il provisioning dei cluster Dataproc l'invio di job della pipeline.
Ruoli per l'account di servizio Cloud Data Fusion
Per impostazione predefinita, l'account di servizio Cloud Data Fusion ha solo
Ruolo di Agente di servizio API Cloud Data Fusion
(roles/datafusion.serviceAgent
).
Il nome dell'entità per questo agente di servizio è
service-CUSTOMER_PROJECT_NUMBER@gcp-sa-datafusion.iam.gserviceaccount.com
.
Le seguenti risorse predefinite sono associate al ruolo Agente di servizio dell'API Cloud Data Fusion.
Ruolo | Risorsa | Autorizzazioni |
---|---|---|
Cloud Data Fusion API Service Agent | Servizi associati:
|
Consulta le autorizzazioni dell'agente di servizio API Cloud Data Fusion. |
Account di servizio predefinito o personalizzato Compute Engine
L'account di servizio Compute Engine è l'account predefinito utilizzato da Cloud Data Fusion per eseguire il deployment ed eseguire job che accedono ad altre risorse Google Cloud. Per impostazione predefinita, si collega a una VM del cluster Dataproc per consentire l'accesso a Cloud Data Fusion Risorse Dataproc durante l'esecuzione di una pipeline.
Puoi scegliere un account di servizio personalizzato da collegare a Dataproc quando crei un'istanza Cloud Data Fusion o quando crei nuove Profili di calcolo nell'interfaccia web di Cloud Data Fusion.
Per ulteriori informazioni, vedi Account di servizio in Cloud Data Fusion.
Ruoli per l'account di servizio Compute Engine
Per impostazione predefinita, per accedere alle risorse (come origini e sink) quando esegui un pipeline, Cloud Data Fusion utilizza Account di servizio predefinito Compute Engine.
Puoi configurare un account di servizio personalizzato gestito dall'utente per le istanze Cloud Data Fusion e assegnare un ruolo a questo account. In seguito, puoi scegliere questo account di servizio quando crei nuove istanze.
Ruolo Runner di Cloud Data Fusion
Nel progetto contenente l'istanza Cloud Data Fusion, sia per impostazione predefinita
e account di servizio personalizzati gestiti dall'utente, concedono Cloud Data Fusion Runner
(datafusion.runner
).
Ruolo | Descrizione | Autorizzazione |
---|---|---|
Data Fusion Runner (datafusion.runner) |
Consente all'account di servizio Compute Engine di comunicare con dei servizi Cloud Data Fusion progetto tenant | datafusion.instances.runtime |
Ruolo Utente account di servizio
Nell'account di servizio predefinito o gestito dall'utente nel progetto in cui
I cluster Dataproc vengono avviati quando esegui le pipeline, concedi il parametro
Account di servizio Cloud Data Fusion con ruolo Utente account di servizio
(roles/iam.serviceAccountUser
).
Per ulteriori informazioni, vedi Concedere l'autorizzazione all'account di servizio.
Ruolo Dataproc Worker
Per eseguire i job sui cluster Dataproc, concedi il ruolo Dataproc Worker (roles/dataproc.worker
) agli account di servizio predefiniti o gestiti dall'utente utilizzati dalle pipeline Cloud Data Fusion.
Ruoli per gli utenti
Per attivare qualsiasi operazione in Cloud Data Fusion, tu (l'entità) devi di avere autorizzazioni sufficienti. Le singole autorizzazioni vengono raggruppate in ruoli e tu concessi i ruoli all'entità.
Se il RBAC non è abilitato o se utilizzi una versione di Cloud Data Fusion che non supporta il RBAC, gli utenti con qualsiasi ruolo IAM di Cloud Data Fusion hanno accesso completo all'interfaccia web di Cloud Data Fusion. Il ruolo Amministratore consente agli utenti solo di gestire l'istanza, ad esempio
Operazioni Create
, Update
, Upgrade
e Delete
.
Concedi i seguenti ruoli agli entità, a seconda delle autorizzazioni di cui hanno bisogno in Cloud Data Fusion.
Ruolo | Descrizione | Autorizzazioni |
---|---|---|
Amministratore Cloud Data Fusion (roles/datafusion.admin ) |
Tutte le autorizzazioni di visualizzazione, più le autorizzazioni per creare, aggiornare ed eliminare di Cloud Data Fusion. |
|
Visualizzatore Cloud Data Fusion (roles/datafusion.viewer ) |
|
|
Accedere alle risorse di un altro progetto in fase di progettazione
Questa sezione descrive il controllo dell'accesso alle risorse che si trovano in un un progetto Google Cloud diverso rispetto all'istanza Cloud Data Fusion in fase di progettazione nel tempo.
Quando progetti le pipeline nell'interfaccia web di Cloud Data Fusion, potresti utilizzare funzioni come Wrangler o Anteprima, che accedono alle risorse in altri progetti.
Le sezioni seguenti descrivono come determinare l'account di servizio nel tuo ambiente e concedere le autorizzazioni appropriate.
Determina l'account di servizio del tuo ambiente
Il nome dell'account di servizio è l'account di servizio Cloud Data Fusion e l'entità
per questo agente di servizio è
service-CUSTOMER_PROJECT_NUMBER@gcp-sa-datafusion.iam.gserviceaccount.com
.
Concedi l'autorizzazione ad accedere alle risorse di un altro progetto
Per concedere i ruoli che concedono l'autorizzazione ad accedere a varie risorse, segui questi passaggi:
- Nel progetto in cui esiste la risorsa di destinazione, aggiungi il token
Account di servizio Cloud Data Fusion (
service-CUSTOMER_PROJECT_NUMBER@gcp-sa-datafusion.iam.gserviceaccount.com
) come entità. - Concedi i ruoli all'account di servizio Cloud Data Fusion sulla risorsa di destinazione nel progetto in cui esiste la risorsa di destinazione.
Dopo aver concesso i ruoli, puoi accedere alle risorse di un progetto diverso all'indirizzo nello stesso modo in cui accedi alle risorse nel progetto in cui in esecuzione.
Accedi alle risorse di un altro progetto al momento dell'esecuzione
Questa sezione descrive il controllo dell'accesso alle risorse che si trovano in un progetto Google Cloud diverso dall'istanza Cloud Data Fusion al momento dell'esecuzione.
Al momento dell'esecuzione, la pipeline viene eseguita su un cluster Dataproc, che può accedere alle risorse di altri progetti. Per impostazione predefinita, il cluster Dataproc viene avviato nello stesso progetto dell'istanza Cloud Data Fusion, ma puoi utilizzare i cluster in un altro progetto.
Per accedere alle risorse in altri progetti Google Cloud, segui questi passaggi:
- Determina l'account di servizio per il progetto.
- Nel progetto in cui si trova la risorsa, concedi ruoli IAM all'account di servizio predefinito di Compute Engine per concedergli l'accesso risorse di un altro progetto.
Determina l'account di servizio Compute Engine
Per ulteriori informazioni sull'account di servizio Compute Engine, consulta Informazioni su IAM in Cloud Data Fusion.
Concedi l'accesso IAM alle risorse in un altro progetto
L'account di servizio predefinito Compute Engine richiede le autorizzazioni per per accedere alle risorse di un altro progetto. Questi ruoli e autorizzazioni possono essere a seconda della risorsa a cui vuoi accedere.
Per accedere alle risorse, segui questi passaggi:
- Concedi ruoli e autorizzazioni, specificando il tuo account di servizio Compute Engine come entità nel progetto in cui esiste la risorsa di destinazione.
- Aggiungi i ruoli appropriati per accedere alla risorsa.
Autorizzazioni dell'API Cloud Data Fusion
Per eseguire l'API Cloud Data Fusion sono necessarie le seguenti autorizzazioni.
Chiamata API | Autorizzazione |
---|---|
instances.create |
datafusion.instances.create |
instances.delete |
datafusion.instances.delete |
instances.list |
datafusion.instances.list |
instances.get |
datafusion.instances.get |
instances.update |
datafusion.instances.update |
operations.cancel |
datafusion.operations.cancel |
operations.list |
datafusion.operations.list |
operations.get |
datafusion.operations.get |
Autorizzazioni per le attività comuni
Le attività comuni in Cloud Data Fusion richiedono le seguenti autorizzazioni:
Attività | Autorizzazioni |
---|---|
Accedere all'interfaccia web di Cloud Data Fusion | datafusion.instances.get |
Accedere alla pagina Istanze di Cloud Data Fusion nella console Google Cloud | datafusion.instances.list |
Accesso alla pagina Dettagli per un'istanza | datafusion.instances.get |
Creazione di una nuova istanza | datafusion.instances.create |
Aggiornamento di etichette e opzioni avanzate per personalizzare un'istanza | datafusion.instances.update |
Eliminazione di un'istanza | datafusion.instances.delete |
Passaggi successivi
- Scopri di più sul controllo dell'accesso tra più progetti.