Permissões sem servidor do Dataproc e papéis do IAM

O gerenciamento de identidade e acesso (IAM) permite controlar o acesso de usuários e grupos aos recursos do projeto. Este documento se concentra nas permissões do IAM relevantes para o Dataproc Serverless e nos papéis do IAM que concedem essas permissões.

Permissões do Dataproc Serverless

Com as permissões do Dataproc sem servidor, os usuários, incluindo contas de serviço, podem realizar ações nos recursos do Dataproc sem servidor. Por exemplo, a permissão dataproc.batches.create permite criar lotes do Dataproc sem servidor no seu projeto. Você não concede permissões diretamente aos usuários. Em vez disso, você concede papéis, que já têm uma ou mais permissões incluídas.

As tabelas a seguir listam as permissões necessárias para chamar as APIs (métodos) do Dataproc sem servidor. As tabelas são organizadas de acordo com as APIs associadas a cada recurso do Dataproc Serverless (lotes, sessões, sessionTemplates e operações). Para ver uma lista das permissões do Google Cloud incluídas em cada função, consulte Funções do Dataproc.

Escopo da permissão:o escopo das permissões do Dataproc sem servidor listadas nas tabelas a seguir é o projeto do Google Cloud (escopo cloud-platform). Consulte Permissões da conta de serviço.

Exemplos:

  • dataproc.batches.create permite a criação de lotes no projeto contendo.
  • dataproc.sessions.create permite a criação de uma sessão interativa no projeto que contém.
  • dataproc.operations.list permite a listagem de detalhes das operações do Dataproc no projeto.

Permissões em lote

Método Permissões necessárias
projects.locations.batches.create dataproc.batches.create 1
projects.locations.batches.delete dataproc.batches.delete
projects.locations.batches.get dataproc.batches.get
projects.locations.batches.list dataproc.batches.list

1 dataproc.batches.create também requer as permissões dataproc.batches.get e dataproc.operations.get para receber atualizações de status da ferramenta de linha de comando gcloud.

Permissões de sessão

Método Permissões necessárias
projects.locations.sessions.create dataproc.sessions.create 1
projects.locations.sessions.delete dataproc.sessions.delete
projects.locations.sessions.get dataproc.sessions.get
projects.locations.sessions.list dataproc.sessions.list
projects.locations.sessions.terminate dataproc.sessions.terminate

1 dataproc.sessions.create também requer as permissões dataproc.sessions.get e dataproc.operations.get para receber atualizações de status da ferramenta de linha de comando gcloud.

Permissões do modelo de ambiente de execução da sessão

Método Permissões necessárias
projects.locations.sessionTemplates.create dataproc.sessionTemplates.create 1
projects.locations.sessionTemplates.delete dataproc.sessionTemplates.delete
projects.locations.sessionTemplates.get dataproc.sessionTemplates.get
projects.locations.sessionTemplates.list dataproc.sessionTemplates.list
projects.locations.sessionTemplates.update dataproc.sessionTemplates.update

1 dataproc.sessionTemplates.create também requer as permissões dataproc.sessionTemplates.get e dataproc.operations.get para receber atualizações de status da ferramenta de linha de comando gcloud.

Permissões de operações

Método Permissão exigida
projects.regions.operations.get dataproc.operations.get
projects.regions.operations.list dataproc.operations.list
projects.regions.operations.cancel 1 dataproc.operations.cancel
projects.regions.operations.delete dataproc.operations.delete
projects.regions.operations.getIamPolicy dataproc.operations.getIamPolicy
projects.regions.operations.setIamPolicy dataproc.operations.setIamPolicy

1 Para cancelar operações em lote, o dataproc.operations.cancel também requer a permissão dataproc.batches.cancel.

Papéis do Dataproc sem servidor

Os papéis do IAM do Dataproc sem servidor são um pacote de uma ou mais permissões. Você concede papéis a usuários ou grupos para permitir que executem ações nos recursos do Dataproc Serverless no seu projeto. Por exemplo, o papel Leitor do Dataproc contém as permissões de acesso e listagem dataproc.batches e dataproc.sessions, que permitem acessar e listar lotes e sessões do Dataproc sem servidor em um projeto.

A tabela a seguir lista os papéis de IAM do Dataproc Serverless e as permissões associadas a cada um:

ID do papel Permissões
roles/dataproc.admin dataproc.batches.cancel
dataproc.batches.create
dataproc.batches.delete
dataproc.batches.get
dataproc.batches.list
dataproc.batches.cancel
dataproc.sessions.create
dataproc.sessions.delete
dataproc.sessions.get
dataproc.sessions.list
dataproc.sessions.terminate
dataproc.sessionTemplates.create
dataproc.sessionTemplates.delete
dataproc.sessionTemplates.get
dataproc.sessionTemplates.list
dataproc.sessionTemplates.update
roles/dataproc.editor dataproc.batches.cancel
dataproc.batches.create
dataproc.batches.delete
dataproc.batches.get
dataproc.batches.list
dataproc.sessions.create
dataproc.sessions.delete
dataproc.sessions.get
dataproc.sessions.list
dataproc.sessions.terminate
dataproc.sessionTemplates.create
dataproc.sessionTemplates.delete
dataproc.sessionTemplates.get
dataproc.sessionTemplates.list
dataproc.sessionTemplates.update
roles/dataproc.viewer dataproc.batches.get
dataproc.batches.list
dataproc.sessions.get
dataproc.sessions.list
dataproc.sessionTemplates.get
dataproc.sessionTemplates.list

Papéis do projeto

Você também pode definir permissões no nível do projeto usando os papéis do Projeto do IAM. Este é um resumo das permissões associadas aos papéis do Projeto do IAM:

Papel do projeto Permissões
Visualizador do projeto Todas as permissões do projeto para ações somente leitura que preservam o estado (get, lista)
Editor do projeto Todas as permissões do Visualizador do projeto acrescidas de todas as permissões do projeto para ações que modificam o estado (criar, excluir, atualizar, usar, cancelar, interromper, iniciar)
Proprietário do projeto Todas as permissões do Editor do projeto acrescidas das permissões para gerenciar o controle de acesso do projeto (get/set IamPolicy) e configurar o faturamento do projeto

Papéis personalizados

As permissões em lote do Dataproc podem ser adicionadas a funções personalizadas pelo Console do Google Cloud ou pela ferramenta de linha de comando gcloud.

Como gerenciar as políticas do IAM

É possível receber e definir políticas do IAM usando o Console do Google Cloud, a API IAM ou a ferramenta de linha de comando gcloud.

A seguir