Controle de acesso do Bigtable com o IAM

Nesta página, descrevemos as opções de controle de acesso no Bigtable.

Visão geral

O Bigtable usa o gerenciamento de identidade e acesso (IAM) para fazer o controle de acesso. Você define políticas do IAM em recursos para controlar quem tem qual acesso a quais recursos.

Os recursos do Bigtable são organizados em uma hierarquia. Um projeto do Google Cloud é o pai de uma instância do Bigtable, que é o pai dos clusters e das tabelas. Uma tabela é o pai das visualizações autorizadas dele, enquanto um cluster é o pai de seus backups. Você pode configurar o controle de acesso em cada nível.

Se você tiver permissões em um nível, também terá permissões abaixo desse nível. Por exemplo, se você tiver acesso no nível do projeto, terá acesso às instâncias, clusters, tabelas e visualizações autorizadas nesse projeto. Se você tiver acesso a uma visualização autorizada, não terá acesso automático a recursos de nível mais alto que são pais da visualização autorizada, como a tabela e a instância. Esse comportamento é chamado de herança de políticas.

Para mais informações sobre a hierarquia do IAM, consulte Herança de políticas do IAM.

Confira alguns exemplos de como usar o controle de acesso no nível do projeto:

  • Permitir que um usuário leia qualquer tabela do projeto, sem poder alterá-la.
  • Permitir que um usuário leia e edite qualquer tabela do projeto, sem poder gerenciar instâncias.
  • Permitir que um usuário leia e edite qualquer tabela do projeto e gerencie instâncias.

Os exemplos de uso do controle de acesso no nível da instância incluem:

  • Permitir que um usuário leia qualquer tabela em apenas uma instância em um projeto que tenha várias instâncias.
  • Permitir que um usuário gerencie apenas uma instância em um projeto que tenha várias instâncias.

Exemplos de como usar o controle de acesso no nível da tabela:

  • Permitir que um usuário grave em uma tabela, mas não leia dela.
  • Permitir que um usuário leia de uma tabela, mas não grave nela.

Confira abaixo alguns exemplos de como usar o controle de acesso no nível do backup:

  • Impedir que um usuário exclua um backup.
  • Impeça que um usuário restaure o backup.

Exemplos de como usar o controle de acesso no nível da visualização autorizada:

  • Permitir que um usuário leia uma visualização autorizada, mas não a modifique.
  • Permitir que um usuário acesse dados de apenas uma das várias visualizações autorizadas de uma tabela.

Para ver uma descrição detalhada do IAM e dos recursos dele, consulte este Guia do desenvolvedor. Consulte, especificamente, Como conceder, alterar e revogar acesso.

No Bigtable, não é possível conceder acesso aos seguintes tipos de principais:

Para ver listas das permissões e dos papéis com os quais o Bigtable é compatível, consulte as seções a seguir.

Como ativar a API Bigtable

Para visualizar e atribuir papéis do IAM do Bigtable, é necessário ativar a API Bigtable para o projeto. Você não vai conseguir acessar os papéis do Bigtable no console do Google Cloud até ativar a API.

Enable the API

Permissões

Nesta seção, resumimos as permissões compatíveis com o Bigtable.

As permissões permitem que os usuários executem ações específicas em recursos do Bigtable. Por exemplo, com as permissões bigtable.instances.list, os usuários podem listar todas as instâncias do Bigtable em um projeto. Não é possível conceder permissões aos usuários diretamente. Em vez disso, é preciso atribuir a cada um deles um papel predefinido ou personalizado, que concederá uma ou mais permissões.

As tabelas a seguir listam as permissões do IAM associadas ao Bigtable:

Nome da permissão do perfil de aplicativo Descrição
bigtable.appProfiles.create Crie um perfil de aplicativo do Bigtable.
bigtable.appProfiles.delete Excluir um perfil de aplicativo do Bigtable.
bigtable.appProfiles.get Conseguir informações sobre um perfil de aplicativo do Bigtable.
bigtable.appProfiles.list Listar os perfis de aplicativos do Bigtable de uma instância.
bigtable.appProfiles.update Atualizar as configurações de um perfil de aplicativo do Bigtable.
Nome da permissão de backups Descrição
bigtable.backups.create Crie um backup no Bigtable.
bigtable.backups.delete Exclua um backup do Bigtable.
bigtable.backups.get Conseguir informações sobre um backup do Bigtable.
bigtable.backups.getIamPolicy Ler as listas de controle de acesso (ACL) de um backup. Retorno como políticas do IAM.
bigtable.backups.list Listar backups do Bigtable.
bigtable.backups.restore Restaurar de um backup do Bigtable.
bigtable.backups.testIamPermissions Receber as permissões do autor da chamada em um backup especificado.
bigtable.backups.read Ler de um backup do Bigtable.
bigtable.backups.setIamPolicy Atualizar ACLs de backup.
bigtable.backups.update Modificar a expiração de um backup do Bigtable.
Nome da permissão de cluster Descrição
bigtable.clusters.create Crie um cluster do Bigtable.
bigtable.clusters.delete Exclua um cluster do Bigtable.
bigtable.clusters.get Receba informações sobre um cluster do Bigtable.
bigtable.clusters.list Listar os clusters do Bigtable de uma instância.
bigtable.clusters.update Atualizar as configurações de um cluster do Bigtable.
Nome da permissão para blocos quentes Descrição
bigtable.hotTablets.list Listar os blocos quentes de um cluster.
Nome da permissão de instância Descrição
bigtable.instances.create Criar uma instância do Bigtable.
bigtable.instances.createTagBinding Criar uma tag.
bigtable.instances.delete Exclua uma instância do Bigtable.
bigtable.instances.deleteTagBinding Excluir uma tag
bigtable.instances.get Receber informações sobre uma instância do Bigtable.
bigtable.instances.getIamPolicy Ler listas de controle de acesso (ACLs) da instância. Retorno como políticas do IAM.
bigtable.instances.list Listar as instâncias do Bigtable de um projeto.
bigtable.instances.listEffectiveTagBindings Listar todas as tags em vigor para uma instância.
bigtable.instances.listTagBindings Listar as tags de uma instância.
bigtable.instances.ping Enviar solicitações de preparação do canal.
bigtable.instances.setIamPolicy Atualizar ACLs.
bigtable.instances.update Atualizar as configurações de uma instância do Bigtable.
Nome da permissão do Key Visualizer Descrição
bigtable.keyvisualizer.get Receba informações do Key Visualizer sobre uma tabela, incluindo metadados sobre padrões de acesso e distribuições de chave de linha.
bigtable.keyvisualizer.list Lista as informações do Key Visualizer disponíveis para uma tabela.
Nome da permissão do local Descrição
bigtable.locations.list Lista locais do Bigtable.
Nome da permissão de tabela Descrição
bigtable.tables.checkConsistency Verificar se uma tabela replicada está atualizada.
bigtable.tables.create Criar uma tabela.
bigtable.tables.delete Excluir uma tabela.
bigtable.tables.generateConsistencyToken Gerar o token para verificar se uma tabela replicada está atualizada.
bigtable.tables.get Conseguir informações sobre uma tabela, incluindo grupos de colunas e configurações individuais.
bigtable.tables.getIamPolicy Ler ACLs da tabela. Retorno como políticas do Cloud IAM.
bigtable.tables.list Listar tabelas em uma instância.
bigtable.tables.mutateRows Modificar linhas em uma tabela ou truncar a tabela.
bigtable.tables.readRows Ler linhas de uma tabela. Isso inclui informações sobre a tabela, como grupos de colunas e configurações individuais.
bigtable.tables.sampleRowKeys Conseguir uma amostra das chaves de linha usadas em uma tabela.
bigtable.tables.setIamPolicy Atualizar as ACLs de tabela.
bigtable.tables.undelete Recuperar uma tabela excluída.
bigtable.tables.update Atualizar as configurações de uma tabela, incluindo grupos de colunas e configurações individuais.
Nome da permissão do local Descrição
bigtable.locations.list Lista locais do Bigtable.
nome da permissão de visualização autorizada Descrição
bigtable.authorizedViews.create Crie uma visualização autorizada.
bigtable.authorizedViews.delete Excluir uma visualização autorizada.
bigtable.authorizedViews.get Receba informações sobre uma visualização autorizada.
bigtable.authorizedViews.getIamPolicy Ver o controle de acesso de uma visualização autorizada. Retorno como políticas do IAM.
bigtable.authorizedViews.list Listar visualizações autorizadas em uma tabela.
bigtable.authorizedViews.mutateRows Modificar linhas em uma visualização autorizada.
bigtable.authorizedViews.readRows Leia linhas de uma visualização autorizada.
bigtable.authorizedViews.sampleRowKeys Receba uma amostra das chaves de linha usadas em uma visualização autorizada.
bigtable.authorizedViews.setIamPolicy Atualizar políticas de controle de acesso para uma visualização autorizada.
bigtable.authorizedViews.update Atualize as configurações de uma visualização autorizada.

Papéis predefinidos

Cada papel predefinido é um grupo de uma ou mais permissões. Por exemplo, roles/bigtable.reader fornece acesso somente leitura a informações sobre instâncias, clusters, tabelas e grupos de colunas do Bigtable, bem como os dados contidos em suas tabelas. Você atribui papéis a usuários ou grupos, o que permite que eles realizem ações nos recursos do seu projeto.

A tabela a seguir lista os papéis predefinidos do Bigtable, incluindo uma lista de permissões associadas a cada um:

Role Permissions

(roles/bigtable.admin)

Administers all Bigtable instances within a project, including the data stored within tables. Can create new instances. Intended for project administrators.

Lowest-level resources where you can grant this role:

  • Table

bigtable.*

  • bigtable.appProfiles.create
  • bigtable.appProfiles.delete
  • bigtable.appProfiles.get
  • bigtable.appProfiles.list
  • bigtable.appProfiles.update
  • bigtable.authorizedViews.create
  • bigtable.authorizedViews.createTagBinding
  • bigtable.authorizedViews.delete
  • bigtable.authorizedViews.deleteTagBinding
  • bigtable.authorizedViews.get
  • bigtable.authorizedViews.getIamPolicy
  • bigtable.authorizedViews.list
  • bigtable.authorizedViews.listEffectiveTags
  • bigtable.authorizedViews.listTagBindings
  • bigtable.authorizedViews.mutateRows
  • bigtable.authorizedViews.readRows
  • bigtable.authorizedViews.sampleRowKeys
  • bigtable.authorizedViews.setIamPolicy
  • bigtable.authorizedViews.update
  • bigtable.backups.create
  • bigtable.backups.delete
  • bigtable.backups.get
  • bigtable.backups.getIamPolicy
  • bigtable.backups.list
  • bigtable.backups.read
  • bigtable.backups.restore
  • bigtable.backups.setIamPolicy
  • bigtable.backups.update
  • bigtable.clusters.create
  • bigtable.clusters.delete
  • bigtable.clusters.get
  • bigtable.clusters.list
  • bigtable.clusters.update
  • bigtable.hotTablets.list
  • bigtable.instances.create
  • bigtable.instances.createTagBinding
  • bigtable.instances.delete
  • bigtable.instances.deleteTagBinding
  • bigtable.instances.executeQuery
  • bigtable.instances.get
  • bigtable.instances.getIamPolicy
  • bigtable.instances.list
  • bigtable.instances.listEffectiveTags
  • bigtable.instances.listTagBindings
  • bigtable.instances.ping
  • bigtable.instances.setIamPolicy
  • bigtable.instances.update
  • bigtable.keyvisualizer.get
  • bigtable.keyvisualizer.list
  • bigtable.locations.list
  • bigtable.tables.checkConsistency
  • bigtable.tables.create
  • bigtable.tables.delete
  • bigtable.tables.generateConsistencyToken
  • bigtable.tables.get
  • bigtable.tables.getIamPolicy
  • bigtable.tables.list
  • bigtable.tables.mutateRows
  • bigtable.tables.readRows
  • bigtable.tables.sampleRowKeys
  • bigtable.tables.setIamPolicy
  • bigtable.tables.undelete
  • bigtable.tables.update

monitoring.metricDescriptors.get

monitoring.metricDescriptors.list

monitoring.timeSeries.*

  • monitoring.timeSeries.create
  • monitoring.timeSeries.list

resourcemanager.projects.get

(roles/bigtable.reader)

Provides read-only access to the data stored within Bigtable tables. Intended for data scientists, dashboard generators, and other data-analysis scenarios.

Lowest-level resources where you can grant this role:

  • Table

bigtable.appProfiles.get

bigtable.appProfiles.list

bigtable.authorizedViews.get

bigtable.authorizedViews.list

bigtable.authorizedViews.readRows

bigtable.authorizedViews.sampleRowKeys

bigtable.backups.get

bigtable.backups.list

bigtable.clusters.get

bigtable.clusters.list

bigtable.hotTablets.list

bigtable.instances.executeQuery

bigtable.instances.get

bigtable.instances.list

bigtable.instances.ping

bigtable.keyvisualizer.*

  • bigtable.keyvisualizer.get
  • bigtable.keyvisualizer.list

bigtable.locations.list

bigtable.tables.checkConsistency

bigtable.tables.generateConsistencyToken

bigtable.tables.get

bigtable.tables.list

bigtable.tables.readRows

bigtable.tables.sampleRowKeys

monitoring.metricDescriptors.get

monitoring.metricDescriptors.list

monitoring.timeSeries.*

  • monitoring.timeSeries.create
  • monitoring.timeSeries.list

resourcemanager.projects.get

(roles/bigtable.user)

Provides read-write access to the data stored within Bigtable tables. Intended for application developers or service accounts.

Lowest-level resources where you can grant this role:

  • Table

bigtable.appProfiles.get

bigtable.appProfiles.list

bigtable.authorizedViews.get

bigtable.authorizedViews.list

bigtable.authorizedViews.mutateRows

bigtable.authorizedViews.readRows

bigtable.authorizedViews.sampleRowKeys

bigtable.backups.get

bigtable.backups.list

bigtable.clusters.get

bigtable.clusters.list

bigtable.hotTablets.list

bigtable.instances.executeQuery

bigtable.instances.get

bigtable.instances.list

bigtable.instances.ping

bigtable.keyvisualizer.*

  • bigtable.keyvisualizer.get
  • bigtable.keyvisualizer.list

bigtable.locations.list

bigtable.tables.checkConsistency

bigtable.tables.generateConsistencyToken

bigtable.tables.get

bigtable.tables.list

bigtable.tables.mutateRows

bigtable.tables.readRows

bigtable.tables.sampleRowKeys

monitoring.metricDescriptors.get

monitoring.metricDescriptors.list

monitoring.timeSeries.*

  • monitoring.timeSeries.create
  • monitoring.timeSeries.list

resourcemanager.projects.get

(roles/bigtable.viewer)

Provides no data access. Intended as a minimal set of permissions to access the Google Cloud console for Bigtable.

Lowest-level resources where you can grant this role:

  • Table

bigtable.appProfiles.get

bigtable.appProfiles.list

bigtable.authorizedViews.get

bigtable.authorizedViews.list

bigtable.backups.get

bigtable.backups.list

bigtable.clusters.get

bigtable.clusters.list

bigtable.hotTablets.list

bigtable.instances.get

bigtable.instances.list

bigtable.instances.listEffectiveTags

bigtable.instances.listTagBindings

bigtable.locations.list

bigtable.tables.checkConsistency

bigtable.tables.generateConsistencyToken

bigtable.tables.get

bigtable.tables.list

monitoring.metricDescriptors.get

monitoring.metricDescriptors.list

monitoring.timeSeries.list

resourcemanager.projects.get

Papéis personalizados

Se os papéis predefinidos do Bigtable não atenderem aos seus requisitos de negócios, defina seus próprios papéis personalizados com as permissões que você especificar.

Caso seu papel personalizado precise oferecer acesso ao console do Google Cloud, precisa identificar as tarefas que os usuários vão realizar e garantir que os recursos tem as permissões necessárias para cada tarefa, conforme mostrado na tabela a seguir. Se um papel personalizado não tiver todas as permissões necessárias para uma tarefa e uma o usuário tentar realizar essa tarefa, o console do Google Cloud não vai funcionar corretamente.

Tarefa do Console do Google Cloud Permissões necessárias
Acesso básico ao Console do Google Cloud
  • bigtable.appProfiles.get
  • bigtable.appProfiles.list
  • bigtable.clusters.get
  • bigtable.clusters.list
  • bigtable.instances.get
  • bigtable.instances.list
  • bigtable.locations.list
  • bigtable.tables.get
  • bigtable.tables.list
  • resourcemanager.projects.get
Criação de uma instância ou cluster

Permissões de acesso básico mais:

  • bigtable.clusters.create
  • bigtable.instances.create
Modificação de uma instância ou cluster

Permissões de acesso básico mais:

  • bigtable.clusters.update
  • bigtable.instances.update
Gerenciamento da configuração de replicação

Permissões de acesso básico mais:

  • bigtable.appProfiles.create
  • bigtable.appProfiles.delete
  • bigtable.appProfiles.update
Exclusão de uma instância ou cluster

Permissões de acesso básico mais:

  • bigtable.clusters.delete
  • bigtable.instances.delete
Monitoramento de uma instância ou cluster

Permissões de acesso básico mais:

  • monitoring.metricDescriptors.get
  • monitoring.metricDescriptors.list
  • monitoring.timeSeries.list
Criar e atualizar uma tabela

Permissões de acesso básico mais:

  • bigtable.tables.create
  • bigtable.tables.update
Restaurar um backup

Permissões de acesso básico mais:

  • bigtable.backups.list
  • bigtable.tables.create
  • bigtable.backups.restore

Gerenciamento do IAM

Nesta seção, explicamos como gerenciar os papéis do IAM e as permissões relacionadas no nível do projeto, da instância, da tabela e do backup.

Gerenciamento do IAM no nível do projeto

No nível do projeto, é possível conceder, alterar e revogar papéis do IAM usando o console do Google Cloud, API IAM ou Google Cloud CLI. Para mais instruções, consulte Como conceder, alterar e revogar acesso a recursos.

Depois de criar um projeto, é possível conceder os papéis do IAM no nível do projeto a usuários com base nos níveis de acesso específicos.

Funções exigidas

Antes de definir papéis do IAM no nível da instância, da tabela, do backup ou da visualização autorizada para um usuário, verifique se ele tem pelo menos um dos seguintes nível do projeto: Papéis do IAM:

  • Visualizador do Bigtable (recomendado)
  • Leitor do Bigtable
  • Usuário do Bigtable
  • Administrador do Bigtable

Escolha um papel no nível do projeto que não tenha mais permissões do que o usuário realmente necessidades em todas as instâncias, tabelas, backups ou visualizações autorizadas no projeto. Por isso, é preciso conceder o papel Leitor do Bigtable em quase todos os casos.

Se o usuário não tiver pelo menos um desses papéis no nível do projeto, ele não vão ter acesso ao Bigtable pela console do Google Cloud. O console do Google Cloud requer um desses papéis no nível do projeto para recuperar informações sobre instâncias, clusters, tabelas ou backups em nome do usuário.

Como conceder papéis de IAM no nível da instância

Você pode conceder qualquer um dos papéis predefinidos do Bigtable às contas de serviço ou usuários no nível da instância. Também é possível conceder qualquer papel personalizado que você tenha definido.

Para conceder um papel predefinido ou personalizado a uma conta de serviço ou um usuário no nível da instância, faça o seguinte:

Console

  1. Acesse a página "Instâncias do Bigtable" no console do Google Cloud.

    Acesse a página "Instâncias".

  2. Marque as caixas ao lado das instâncias dos papéis que você quer gerenciar. Será exibido um painel de informações.

  3. No painel de informações, clique em Permissões.

  4. Em Adicionar principais, digite o endereço de e-mail do usuário ou da conta de serviço que você quer adicionar e clique no endereço de e-mail do usuário ou da conta de serviço.

  5. Clique na lista suspensa Selecionar papel e selecione Bigtable para selecionar um papel predefinido ou Personalizado para e selecionar um papel personalizado.

  6. Clique no nome de cada papel que você quer atribuir.

  7. Clique em Adicionar. O usuário ou a conta de serviço receberá os papéis que você especificou no nível da instância.

gcloud

  1. Se você não souber o ID da instância, use o comando bigtable instances list para ver uma lista das instâncias do projeto:

    gcloud bigtable instances list
    
  2. Use o comando bigtable instances set-iam-policy:

    gcloud bigtable instances set-iam-policy \
    INSTANCE_ID \
    POLICY_FILE
    

    Preencha o seguinte:

    • INSTANCE_ID: identificador permanente da instância
    • POLICY_FILE: caminho para um arquivo JSON ou YAML local que contenha uma política de IAM válida.

Como conceder papéis de IAM no nível da tabela

No nível da tabela, é possível conceder qualquer papel predefinido do Bigtable a um usuário ou uma conta de serviço. Também é possível conceder qualquer papel personalizado que você tenha definido.

Para conceder um papel predefinido ou personalizado a uma conta de serviço ou um usuário no nível da tabela, faça o seguinte:

Console

  1. Acesse a página "Instâncias do Bigtable" no console do Google Cloud.

    Acesse a página "Instâncias".

  2. Clique no nome da instância que contém a tabela que terá o IAM definindo.

  3. Selecione Tabelas no painel de navegação esquerdo.

  4. Marque as caixas ao lado das tabelas com os papéis que você quer gerenciar. Será exibido um painel de informações.

  5. No painel de informações, clique em Permissões.

  6. Em Adicionar principais, digite o endereço de e-mail do usuário ou da conta de serviço que você quer adicionar e clique no endereço de e-mail do usuário ou da conta de serviço.

  7. Clique na lista suspensa Selecionar papel e selecione Bigtable para selecionar um papel predefinido ou Personalizado para e selecionar um papel personalizado.

  8. Clique no nome de cada papel que você quer atribuir.

  9. Clique em Adicionar. O usuário ou a conta de serviço receberá os papéis que você especificou no nível da tabela.

gcloud

  1. Se você não souber o ID da instância, use o comando bigtable instances list para ver uma lista das instâncias do projeto:

    gcloud bigtable instances list
    
  2. Se você não souber os IDs de cluster da instância, use o comando bigtable instances tables list para ver uma lista de clusters na instância:

    gcloud bigtable instances tables list --instances=INSTANCE_ID
    

    Preencha o seguinte:

    • INSTANCE_ID: identificador permanente da instância
  3. Use o comando bigtable instances tables set-iam-policy:

    gcloud bigtable instances tables set-iam-policy \TABLE_ID \
        --instance=INSTANCE_ID \
        POLICY_FILE
    

    Preencha o seguinte:

    • TABLE_ID: identificador permanente da tabela.
    • INSTANCE_ID: identificador permanente da instância
    • POLICY_FILE: caminho para um arquivo JSON ou YAML local que contenha uma política de IAM válida.

Como conceder papéis do IAM no nível de backup

No nível da tabela, é possível conceder qualquer papel predefinido do Bigtable a um usuário ou uma conta de serviço. Também é possível conceder qualquer papel personalizado que você tenha definido.

Para conceder um papel predefinido ou personalizado a uma conta de serviço ou um usuário no nível da instância, faça o seguinte:

gcloud

  1. Se você não souber o ID da instância, use o comando bigtable instances list para ver uma lista das instâncias do projeto:

    gcloud bigtable instances list
    
  2. Se você não souber os IDs de backup em uma instância, use o comando bigtable instances backups list para ver uma lista de backups na instância.

    gcloud bigtable backups list --instances=INSTANCE_ID
    

    Preencha o seguinte:

    • INSTANCE_ID: identificador permanente da instância
  3. Use o comando gcloud bigtable backups set-iam-policy:

    gcloud bigtable backups set-iam-policy BACKUP_ID \
        --instance=INSTANCE_ID \
        --cluster=CLUSTER_ID \
        POLICY_FILE
    

    Preencha o seguinte:

    • BACKUP_ID: o identificador permanente do backup.
    • INSTANCE_ID: identificador permanente da instância
    • TABLE_ID: o identificador permanente da tabela.
    • POLICY_FILE: caminho para um arquivo JSON ou YAML local que contenha uma política de IAM válida.

Como conceder papéis do IAM autorizados no nível da visualização

No nível da visualização autorizada, é possível conceder qualquer um Papéis predefinidos do Bigtable para uma conta de serviço ou usuário. Também é possível conceder qualquer papel personalizado que você tenha definido.

Para conceder um papel predefinido ou personalizado a uma conta de serviço ou de usuário no nível da visualização autorizada, execute o seguinte:

gcloud

  1. Se você não souber o ID da instância, use o comando bigtable instances list para ver uma lista das instâncias do projeto:

    gcloud bigtable instances list
    
  2. Se você não souber os IDs de cluster da instância, use o comando bigtable instances tables list para ver uma lista de clusters na instância:

    gcloud bigtable instances tables list --instances=INSTANCE_ID
    
  3. Se você não souber o ID da visualização, use o comando bigtable authorized-views list para conferir uma lista de todas as visualizações autorizadas da tabela.

    gcloud bigtable instances tables authorized-views list \
        --instance=INSTANCE_ID \
        --table=TABLE_ID
    
  4. Use o comando bigtable authorized-views set-iam-policy:

    gcloud bigtable authorized-views set-iam-policy TABLE_ID \
        AUTHORIZED_VIEW_ID --instance=INSTANCE_ID POLICY_FILE
    

    Preencha o seguinte:

    • INSTANCE_ID: identificador permanente da instância
    • TABLE_ID: identificador permanente da tabela.
    • AUTHORIZED_VIEW_ID: o identificador permanente da visualização
    • POLICY_FILE: caminho para um arquivo JSON ou YAML local que contenha uma política de IAM válida.

Condições do IAM

As condições do IAM permitem definir e aplicar o controle de acesso condicional baseado em atributos para alguns recursos do Google Cloud, incluindo recursos do Bigtable.

No Bigtable, é possível aplicar o acesso condicional com base nos seguintes atributos:

  • Atributos de data/hora: use para definir o acesso temporário (com validade), programado ou de duração limitada aos recursos do Bigtable. Por exemplo, é possível permitir que um usuário acesse uma tabela até uma data específica.
  • Atributos de recurso: use para configurar o acesso condicional com base em nome, tipo de recurso ou atributos de serviço de recurso. No Bigtable, é possível usar atributos de instâncias, clusters, tabelas, backups e visualizações autorizadas para configurar o acesso condicional. Por exemplo, você pode permitir que um usuário gerencie somente em tabelas que começam com um prefixo específico, ou você pode permitir que o usuário acesse apenas uma tabela específica.

Para mais informações sobre as condições do IAM, consulte a Visão geral das condições.

A seguir

Saiba mais sobre IAM.