Panoramica
Identity and Access Management (IAM) ti consente di controllare l'accesso di utenti e gruppi alle risorse del progetto. Questo documento è incentrato su Le autorizzazioni IAM pertinenti per Dataproc e i ruoli IAM che concedono queste autorizzazioni.
Autorizzazioni Dataproc
Le autorizzazioni Dataproc consentono agli utenti, inclusi gli account di servizio, di eseguire azioni su cluster, job, operazioni e modelli di flusso di lavoro Dataproc. Ad esempio, dataproc.clusters.create
consente a un utente di creare cluster Dataproc in un progetto.
In genere, non concedi autorizzazioni, ma ruoli che includono una o più autorizzazioni.
Le tabelle seguenti elencano le autorizzazioni necessarie per chiamare Dataproc API (metodi). Le tabelle sono organizzate in base alle API associate ogni risorsa Dataproc (cluster, job, operazioni e modelli di flusso di lavoro).
Ambito delle autorizzazioni: l'ambito di Dataproc
elencate nella tabella che segue sono le autorizzazioni
di Google Cloud che contengono
progetto (ambito: cloud-platform
). Consulta
Autorizzazioni dell'account di servizio.
Esempi:
dataproc.clusters.create
consente la creazione di cluster Dataproc nel progetto contenentedataproc.jobs.create
consente l'invio di Dataproc in cluster Dataproc nel progetto contenitoredataproc.clusters.list
consente la visualizzazione di dettagli di cluster Dataproc nel progetto contenitore
Autorizzazioni richieste per i metodi dei cluster
Metodo | Autorizzazioni obbligatorie |
---|---|
projects.regions.clusters.create 1, 2 | dataproc.clusters.create |
projects.regions.clusters.get | dataproc.clusters.get |
projects.regions.clusters.list | dataproc.clusters.list |
projects.regions.clusters.patch 1, 2, 3 | dataproc.clusters.update |
projects.regions.clusters.delete 1 | dataproc.clusters.delete |
projects.regions.clusters.start | dataproc.clusters.start |
projects.regions.clusters.stop | dataproc.clusters.stop |
projects.regions.clusters.getIamPolicy | dataproc.clusters.getIamPolicy |
projects.regions.clusters.setIamPolicy | dataproc.clusters.setIamPolicy |
Note:
- L'autorizzazione
dataproc.operations.get
è necessaria anche per ricevere aggiornamenti sullo stato da Google Cloud CLI. - L'autorizzazione
dataproc.clusters.get
è necessaria anche per ottenere il risultato dell'operazione da Google Cloud CLI. - Per attivare un criterio di scalabilità automatica su un cluster è necessaria anche l'autorizzazione
dataproc.autoscalingPolicies.use
.
Autorizzazioni richieste per i metodi di job
Metodo | Autorizzazioni obbligatorie |
---|---|
projects.regions.jobs.submit 1, 2 | dataproc.jobs.create dataproc.clusters.use |
projects.regions.jobs.get | dataproc.jobs.get |
projects.regions.jobs.list | dataproc.jobs.list |
projects.regions.jobs.cancel 1 | dataproc.jobs.cancel |
projects.regions.jobs.patch 1 | dataproc.jobs.update |
projects.regions.jobs.delete 1 | dataproc.jobs.delete |
projects.regions.jobs.getIamPolicy | dataproc.jobs.getIamPolicy |
projects.regions.jobs.setIamPolicy | dataproc.jobs.setIamPolicy |
Note:
Google Cloud CLI richiede anche
dataproc.jobs.get
autorizzazione perjobs submit
,jobs wait
,jobs update
,jobs delete
, ejobs kill
.gcloud CLI richiede anche
dataproc.clusters.get
per inviare i job. Per un esempio di configurazione le autorizzazioni necessarie a un utente per eseguiregcloud dataproc jobs submit
su utilizzando IAM granulare Dataproc (vedi Invio di job con IAM granulare).
Autorizzazioni richieste dai metodi di operazioni
Metodo | Autorizzazioni obbligatorie |
---|---|
projects.regions.operations.get | dataproc.operations.get |
projects.regions.operations.list | dataproc.operations.list |
projects.regions.operations.cancel | dataproc.operations.cancel |
projects.regions.operations.delete | dataproc.operations.delete |
projects.regions.operations.getIamPolicy | dataproc.operations.getIamPolicy |
projects.regions.operations.setIamPolicy | dataproc.operations.setIamPolicy |
Autorizzazioni richieste per i metodi dei modelli di flusso di lavoro
Metodo | Autorizzazioni obbligatorie |
---|---|
projects.regions.workflowTemplates.instantiate | dataproc.workflowTemplates.instantiate |
projects.regions.workflowTemplates.instantiateInline | dataproc.workflowTemplates.instantiateInline |
projects.regions.workflowTemplates.create | dataproc.workflowTemplates.create |
projects.regions.workflowTemplates.get | dataproc.workflowTemplates.get |
projects.regions.workflowTemplates.list | dataproc.workflowTemplates.list |
projects.regions.workflowTemplates.update | dataproc.workflowTemplates.update |
projects.regions.workflowTemplates.delete | dataproc.workflowTemplates.delete |
projects.regions.workflowTemplates.getIamPolicy | dataproc.workflowTemplates.getIamPolicy |
projects.regions.workflowTemplates.setIamPolicy | dataproc.workflowTemplates.setIamPolicy |
Note:
Le autorizzazioni dei modelli di flusso di lavoro sono indipendenti dalle autorizzazioni di cluster e job. Un utente senza autorizzazioni
create cluster
osubmit job
può creare e istanziare un modello di flusso di lavoro.Google Cloud CLI richiede inoltre Autorizzazione
dataproc.operations.get
a eseguire il polling per il completamento del flusso di lavoro.Per annullare un'esecuzione è necessaria l'autorizzazione
dataproc.operations.cancel
nel tuo flusso di lavoro.
Autorizzazioni richieste per i metodi dei criteri di scalabilità automatica
Metodo | Autorizzazioni obbligatorie |
---|---|
projects.regions.autoscalingPolicies.create | dataproc.autoscalingPolicies.create |
projects.regions.autoscalingPolicies.get | dataproc.autoscalingPolicies.get |
projects.regions.autoscalingPolicies.list | dataproc.autoscalingPolicies.list |
projects.regions.autoscalingPolicies.update | dataproc.autoscalingPolicies.update |
projects.regions.autoscalingPolicies.delete | dataproc.autoscalingPolicies.delete |
projects.regions.autoscalingPolicies.getIamPolicy | dataproc.autoscalingPolicies.getIamPolicy |
projects.regions.autoscalingPolicies.setIamPolicy | dataproc.autoscalingPolicies.setIamPolicy |
Note:
- L'autorizzazione
dataproc.autoscalingPolicies.use
è necessaria per attivare un criterio di scalabilità automatica su un cluster con una richiesta di metodoclusters.patch
.
Autorizzazioni richieste per i metodi dei gruppi di nodi
Metodo | Autorizzazioni obbligatorie |
---|---|
projects.regions.nodeGroups.create | dataproc.nodeGroups.create |
projects.regions.nodeGroups.get | dataproc.nodeGroups.get |
projects.regions.nodeGroups.resize | dataproc.nodeGroups.update |
Ruoli Dataproc
Ruoli IAM di Dataproc
sono un bundle di una o più autorizzazioni.
Puoi assegnare ruoli a utenti o gruppi per consentire loro di eseguire azioni nella
di risorse Dataproc in un progetto. Ad esempio:
Il ruolo Visualizzatore Dataproc contiene
Autorizzazioni get
e list
, che consentono a un utente di recuperare ed elencare
Cluster, job e operazioni Dataproc in un progetto.
La tabella riportata di seguito elenca i ruoli IAM di Dataproc e le autorizzazioni associate a ciascun ruolo.
Ruoli Dataproc |
Autorizzazioni |
Dataproc Administrator( Controllo completo delle risorse Dataproc. |
|
Dataproc Editor( Fornisce le autorizzazioni necessarie per visualizzare le risorse richieste per gestire Dataproc, inclusi tipi di macchine, reti, progetti e zone. Risorse di livello più basso a cui puoi concedere questo ruolo:
|
|
Dataproc Hub Agent( Consente di gestire le risorse Dataproc. Destinato agli account di servizio che eseguono istanze Dataproc Hub. |
|
Dataproc Viewer( Fornisce l'accesso di sola lettura alle risorse di Dataproc. Risorse di livello più basso in cui puoi concedere questo ruolo:
|
|
Dataproc Worker( Fornisce l'accesso worker alle risorse Dataproc. Destinato agli account di servizio. |
|
Note:
- Le autorizzazioni
compute
sono necessarie o consigliate per crea e visualizza i cluster Dataproc utilizzando la console Google Cloud o gcloud CLI Google Cloud CLI. - Per consentire a un utente di caricare file, concedi il ruolo
Storage Object Creator
. Per consentire a un utente di visualizzare l'output del job, concedi il ruoloStorage Object Viewer
. - Un utente deve avere l'autorizzazione
monitoring.timeSeries.list
per poter visualizza i grafici nella console Google Cloud→Dataproc→Dettagli del cluster Panoramica. - Un utente deve avere l'autorizzazione
compute.instances.list
per visualizzare lo stato dell'istanza e il menu SSH dell'istanza master nella Console Google Cloud→Dataproc→Dettagli cluster Istanze VM. Per informazioni sui ruoli di Compute Engine, consulta Compute Engine→Ruoli IAM disponibili). - Per creare un cluster con un account di servizio specificato dall'utente, l'account di servizio specificato deve disporre di tutte le autorizzazioni concesse dal ruolo
Dataproc Worker
, che includono l'accesso ai bucket temporanei e di staging di Dataproc. Potrebbero essere necessari ruoli aggiuntivi a seconda delle funzionalità configurate. Consulta Creare un cluster con un account di servizio VM personalizzato per ulteriori informazioni.
Ruoli del progetto
Puoi anche impostare le autorizzazioni a livello di progetto utilizzando i ruoli IAM Project. La tabella seguente elenca le autorizzazioni associate ai ruoli del progetto IAM:
Ruolo progetto | Autorizzazioni |
---|---|
Visualizzatore progetto | Tutte le autorizzazioni di progetto per le azioni di sola lettura che conservano lo stato (get, list) |
Editor progetto | Tutte le autorizzazioni di Visualizzatore progetto, oltre a tutte le autorizzazioni del progetto per le azioni che modificano lo stato (creazione, eliminazione, aggiornamento, utilizzo, annullamento, interruzione, avvio) |
Proprietario progetto | Tutte le autorizzazioni di Editor del progetto, oltre alle autorizzazioni per gestire il controllo dell'accesso per il progetto (get/set IamPolicy) e per configurare la fatturazione del progetto |
Riepilogo dei ruoli IAM e delle operazioni Dataproc
Nella tabella seguente sono elencate le operazioni di Dataproc associate a: nei ruoli di progetto e Dataproc.
Operazione | Editor progetto | Visualizzatore progetto | Amministratore Dataproc | Dataproc Editor | Dataproc Viewer |
---|---|---|---|---|---|
Ottieni/imposta autorizzazioni IAM Dataproc | No | No | Sì | No | No |
Crea cluster | Sì | No | Sì | Sì | No |
Elenca cluster | Sì | Sì | Sì | Sì | Sì |
Recupero dei dettagli del cluster | Sì | Sì | Sì 1, 2 | Sì 1, 2 | Sì 1, 2 |
Aggiorna cluster | Sì | No | Sì | Sì | No |
Elimina cluster | Sì | No | Sì | Sì | No |
Avvia/Interrompi cluster | Sì | No | Sì | Sì | No |
Invia il job | Sì | No | Sì 3 | Sì3 | No |
Elenca job | Sì | Sì | Sì | Sì | Sì |
Visualizza i dettagli del job | Sì | Sì | Sì 4 | Sì 4 | Sì 4 |
Annulla job | Sì | No | Sì | Sì | No |
Elimina job | Sì | No | Sì | Sì | No |
Elenca operazioni | Sì | Sì | Sì | Sì | Sì |
Visualizzare i dettagli dell'operazione | Sì | Sì | Sì | Sì | Sì |
Elimina operazione | Sì | No | Sì | Sì | No |
Note:
- Il grafico del rendimento non è disponibile, a meno che l'utente non abbia anche un
ruolo con l'autorizzazione
monitoring.timeSeries.list
. - L'elenco delle VM nel cluster non includerà informazioni sullo stato o un link SSH per l'istanza principale, a meno che l'utente non abbia anche un ruolo con l'autorizzazione
compute.instances.list
. - I job che caricano file richiedono che l'utente disponga di
Storage Object Creator
o l'accesso in scrittura al ruolo Dataproc bucket gestione temporanea. - L'output del job non è disponibile a meno che l'utente non disponga anche dell'oggetto Storage Ruolo Visualizzatore o dispone dell'accesso in lettura al bucket gestione temporanea per del progetto.
Account di servizio
Quando chiami le API Dataproc per eseguire azioni in un progetto, come la creazione di istanze VM, Dataproc esegue le azioni per tuo conto utilizzando un account di servizio con le autorizzazioni richieste per eseguire le azioni. Per ulteriori informazioni, vedi Account di servizio Dataproc.
Gestione IAM
Puoi recuperare e impostare i criteri IAM utilizzando la console Google Cloud, l'API IAM o la Google Cloud CLI.
- Per la console Google Cloud, consulta Controllo dell'accesso tramite la console Google Cloud.
- Per l'API, vedi Controllo dell'accesso tramite l'API.
- Per Google Cloud CLI, consulta Controllo dell'accesso con Google Cloud CLI.
Passaggi successivi
- Scopri di più su entità e ruoli Dataproc
- Scopri di più su IAM granulare di Dataproc
- Scopri di più su IAM.
- Scopri di più sugli account di servizio in Dataproc