Permissões e papéis primários

Visão geral

O BigQuery é compatível com os papéis primários do IAM para acesso dos envolvidos no projeto.

Os papéis primários no nível do conjunto de dados do BigQuery existiam antes da introdução do gerenciamento de identidade e acesso. É recomendável usar os papéis predefinidos do IAM em vez disso.

Papéis primários para projetos

Por padrão, quando um projeto é acessado, também é possível acessar conjuntos de dados dentro dele. O acesso padrão pode ser substituído com base no conjunto de dados. Qualquer usuário com o papel Owner no projeto pode revogar ou alterar qualquer papel desse projeto.

Quando um projeto é criado, o BigQuery concede o papel Owner ao usuário o criou.

Papel primário Recursos
Viewer
  • Pode executar um job no projeto. Papéis de conjuntos de dados adicionais são necessários, dependendo do tipo de job.
  • Pode listar e receber todos os jobs, e atualizar os jobs iniciados para o projeto.
  • Se você criar um conjunto de dados em um projeto que contenha qualquer visualizador, o BigQuery concederá a esse usuário o papel predefinido bigquery.dataViewer para esse novo conjunto.
Editor
  • Os mesmos recursos que Viewer, além destes:
    • Pode criar um novo conjunto de dados no projeto.
    • Se você criar um conjunto de dados em um projeto que contenha qualquer editor, o BigQuery concederá a esse usuário o papel predefinido bigquery.dataEditor para esse novo conjunto.
Owner
  • Os mesmos recursos que Editor, além destes:
    • Pode listar todos os conjuntos de dados no projeto.
    • Pode excluir qualquer conjunto de dados do projeto.
    • Pode listar e receber todos os jobs executados no projeto, incluindo aqueles executados por outros usuários.
    • Se você criar um conjunto de dados, o BigQuery concederá a todos os proprietários do projeto o papel predefinido bigquery.dataOwner para esse novo conjunto.

      Exceção: quando um usuário executa uma consulta, um conjunto de dados anônimo é criado para armazenar a tabela de resultados em cache. Somente o usuário que executa a consulta recebe acesso OWNER ao conjunto de dados anônimo.

Papéis primários para projetos são concedidos ou revogados por meio do Console do Google Cloud. É preciso ter acesso Owner ao projeto para conceder ou revogar um novo papel.

Para mais informações sobre como conceder ou revogar acesso a papéis do projeto, consulte Como conceder, alterar e revogar o acesso a recursos na documentação do gerenciamento de identidade e acesso.

Papéis primários para conjuntos de dados

Os seguintes papéis primários aplicam-se a conjuntos de dados:

Papel no conjunto de dados Recursos
READER
  • Pode ler, consultar, copiar ou exportar tabelas no conjunto de dados. Pode ler rotinas no conjunto de dados.
    • Pode chamar get no conjunto de dados.
    • Pode chamar get e list nas tabelas do conjunto de dados.
    • Pode chamar get e list nas rotinas no conjunto de dados.
    • Pode chamar list nos dados de tabelas no conjunto de dados.
  • Realiza o mapeamento para o papel predefinido bigquery.dataViewer.
WRITER
OWNER

Observação: um conjunto de dados precisa ter, pelo menos, uma entidade com o papel OWNER. Um usuário com o papel OWNER não pode remover o próprio papel OWNER.

Para mais informações sobre como atribuir papéis no nível do conjunto de dados, consulte Como controlar o acesso a conjuntos de dados.

Quando você cria um novo conjunto de dados, o BigQuery adiciona o acesso padrão a esse conjunto para as seguintes entidades: Os papéis especificados na criação do conjunto de dados substituem os valores padrão.

Entidade Papel no conjunto de dados
Todos os usuários com acesso Viewer ao projeto READER
Todos os usuários com acesso Editor ao projeto WRITER
Todos os usuários com acesso Owner ao projeto

OWNER

Exceção: quando um usuário executa uma consulta, um conjunto de dados anônimo é criado para armazenar a tabela de resultados em cache. Somente o usuário que executa a consulta recebe acesso OWNER ao conjunto de dados anônimo.