Criar e gerenciar visualizações autorizadas
Este documento descreve como definir, criar e realizar outras operações administrativas em uma visualização autorizada usando a CLI ou o console do Google Cloud. Antes de ler este documento, você precisa conhecer a Visão geral das visualizações autorizadas.
Funções exigidas
Para receber as permissões necessárias para
executar operações administrativas em uma visualização autorizada,
peça ao administrador para conceder a você o
papel do IAM Administrador do Bigtable (roles/bigtable.admin
) na
tabela.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Esse papel predefinido contém as permissões necessárias para realizar operações administrativas em uma visualização autorizada. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As permissões a seguir são necessárias para realizar operações administrativas em uma visualização autorizada:
-
bigtable.authorizedViews.get
-
bigtable.authorizedViews.list
-
bigtable.authorizedViews.create
-
bigtable.authorizedViews.update
-
bigtable.authorizedViews.delete
-
bigtable.authorizedViews.getIamPolicy
-
bigtable.authorizedViews.setIamPolicy
-
bigtable.authorizedViews.readRows
-
bigtable.authorizedViews.sampleRowKeys
-
bigtable.authorizedViews.mutateRows
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Para saber como gerenciar papéis do IAM do Bigtable no nível da visualização autorizada, consulte Gerenciamento do IAM no nível da visualização autorizada.
Criar uma visualização autorizada
Ao criar uma visualização autorizada, considere as consultas que serão executadas nela. As solicitações de leitura, gravação e exclusão enviadas para uma visualização autorizada precisam referenciar apenas os dados que estão na visualização autorizada. Isso significa, por exemplo, que se você tentar ler, gravar ou excluir uma linha que tenha colunas na tabela que não estão na sua visualização autorizada, a solicitação falhará.
Para evitar uma situação em que as solicitações de dados para uma visualização autorizada falhem porque colunas foram adicionadas à tabela que não estão na visualização autorizada, especifique um prefixo de qualificador de coluna vazio "" para um grupo de colunas.
É possível especificar até 100 parâmetros de definição por visualização autorizada.
Console
Abra a lista de instâncias do Bigtable no Console do Google Cloud.
Clique na instância que contém a tabela que você quer ter uma visualização autorizada.
No painel de navegação, clique em Bigtable Studio.
Clique em Criador para abrir o criador de consultas.
Escolha a tabela que você quer ter acesso.
Adicione cláusulas para criar uma consulta que retorne apenas os dados a que os usuários da visualização autorizada podem ter acesso.
- As cláusulas aceitáveis para uma visualização autorizada são o prefixo de chave de linha e as colunas (qualificadores de coluna).
- Para especificar um prefixo de qualificador de coluna, adicione um asterisco após o prefixo. Por exemplo, para incluir todas as colunas que começam com "data", insira
data*
no campo Colunas depois do nome da família de colunas. - A cláusula Limit é ignorada quando a visualização autorizada é salva.
- Para mais informações sobre como usar o builder de consulta, consulte Criar consultas no console.
Clique em Executar.
Depois de verificar que o painel de resultados mostra dados que precisam ser incluídos na visualização autorizada, clique em Salvar como visualização.
Insira um identificador permanente para a visualização autorizada que ainda não esteja em uso na tabela.
Opcional: para salvar sem conceder acesso, clique em Salvar.
Opcional: para salvar a visualização autorizada e configurar o acesso a ela, clique em Salvar e conceder acesso. Para mais informações sobre o controle de acesso, consulte Controle de acesso do Bigtable com o IAM.
- Adicione pelo menos uma pessoa e selecione o papel a que ela ou o grupo de pessoas precisa ser atribuído.
- Opcional: para conceder acesso a outros papéis, clique em Adicionar outro papel e insira o principal e o papel de cada papel adicional.
- Clique em Salvar.
gcloud
Execute o comando bigtable authorized-views create
. Para mais informações,
consulte a documentação de referência em gcloud bigtable authorized-views
create.
gcloud bigtable authorized-views create AUTHORIZED_VIEW_ID \
--instance=INSTANCE_ID \
--table=TABLE_ID \
--definition-file=DEFINITION_FILE_PATH
Substitua:
AUTHORIZED_VIEW_ID
: um identificador permanente da visualização autorizada que ainda não está em uso na tabelaINSTANCE_ID
: identificador permanente da instância que contém a tabela.TABLE_ID
: o identificador permanente da tabela para a qual você está criando uma visualização autorizada.DEFINITION_FILE_PATH
: o caminho para uma representação válida formatada em JSON de uma visualização autorizada. Para conferir exemplos de arquivos de definição formatados corretamente, consulte Exemplos de arquivos de definição.
Também é possível executar o comando sem fornecer o arquivo de definição. Nesse caso, a CLI gcloud abre um editor e solicita valores.
Para confirmar que a visualização autorizada foi criada, confira uma lista de visualizações autorizadas para a tabela.
Java
Para saber como instalar e usar a biblioteca de cliente do Bigtable, consulte Bibliotecas de cliente do Bigtable.
Para autenticar no Bigtable, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Modificar uma visualização autorizada
Console
Abra a lista de instâncias do Bigtable no Console do Google Cloud.
Clique na instância que contém a visualização autorizada.
No painel de navegação, clique em Bigtable Studio.
No Explorer, abra a tabela e Visualizações autorizadas.
Ao lado da visualização autorizada que você quer modificar, clique no menu de ações more_vert e em Abrir.
Modifique ou adicione cláusulas para criar uma consulta que retorne apenas os dados a que você quer que os usuários da visualização autorizada tenham acesso.
- As cláusulas aceitáveis para uma visualização autorizada são o prefixo de chave de linha e as colunas (qualificadores de coluna).
- Para especificar um prefixo de qualificador de coluna, adicione um asterisco após o prefixo. Por exemplo, para incluir todas as colunas que começam com "data", insira
data*
no campo Colunas depois do nome da família de colunas. - A cláusula Limit é ignorada quando a visualização autorizada é salva.
- Para mais informações sobre como usar o builder de consulta, consulte Criar consultas no console.
Clique em Executar.
Depois de verificar que o painel de resultados mostra dados que precisam ser incluídos na visualização autorizada, clique em Salvar como visualização.
Na caixa de diálogo, insira o ID da visualização autorizada que você modificou.
A caixa de diálogo mostra uma mensagem alertando que você está substituindo a visualização autorizada.
Opcional: para salvar sem conceder acesso, clique em Salvar.
Opcional: para salvar a visualização autorizada e configurar o acesso a ela, clique em Salvar e conceder acesso. Para mais informações sobre o controle de acesso, consulte Controle de acesso do Bigtable com o IAM.
- Adicione pelo menos um participante e selecione o papel a que esse participante ou grupo de participantes precisa ser atribuído.
- Opcional: para conceder acesso a outros papéis, clique em Adicionar outro papel e insira o principal e o papel de cada papel adicional.
- Clique em Salvar.
gcloud
Modifique uma visualização autorizada usando o comando bigtable authorized-views
update
. Para mais informações, consulte a documentação de referência em
gcloud bigtable authorized-views
update.
gcloud bigtable authorized-views update AUTHORIZED_VIEW_ID \
--instance=INSTANCE_ID \
--table=TABLE_ID \
--definition-file=DEFINITION_FILE_PATH
Substitua:
AUTHORIZED_VIEW_ID
: identificador permanente da visualização autorizada.INSTANCE_ID
: identificador permanente da instância;TABLE_ID
: o identificador permanente da tabela de origemDEFINITION_FILE_PATH
: o caminho para uma representação válida formatada em JSON de uma visualização autorizada. Para conferir exemplos de arquivos de definição formatados corretamente, consulte Exemplos de arquivos de definição.
Também é possível executar o comando sem fornecer o arquivo de definição. Nesse caso, a CLI gcloud abre um editor e solicita valores.
Opcional: para impedir que a CLI gcloud mostre uma solicitação de confirmação
que mostre a diferença entre a estrutura de visualização autorizada atual
e depois que a atualização for confirmada, anexe a flag --no-interactive
ao comando.
Java
Para saber como instalar e usar a biblioteca de cliente do Bigtable, consulte Bibliotecas de cliente do Bigtable.
Para autenticar no Bigtable, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Ativar ou desativar a proteção contra exclusão
Para ativar a proteção contra exclusão de uma visualização autorizada, adicione
--deletion-protection
ao comando de atualização.
Para desativar a proteção contra exclusão, adicione
no-deletion-protection
ao comando de atualização.
Excluir uma visualização autorizada
Se você excluir uma tabela, todas as visualizações autorizadas dela também serão excluídas.
Não é possível desfazer a exclusão de uma visualização autorizada. No entanto, se você excluir uma tabela e depois desfazer a exclusão, todas as visualizações autorizadas dela serão restauradas. Em seguida, reconfigure o IAM para as visualizações autorizadas e as tabelas. Para mais detalhes, consulte Desfazer a exclusão de uma tabela.
Console
Abra a lista de instâncias do Bigtable no Console do Google Cloud.
Clique na instância que contém a visualização autorizada.
No painel de navegação, clique em Bigtable Studio.
No Explorer, abra a tabela e Visualizações autorizadas.
Ao lado da visualização autorizada que você quer excluir, clique no menu de ações more_vert e em Excluir.
gcloud
Exclua uma visualização autorizada usando o comando bigtable instances tables
authorized-views delete
. Para mais informações,
consulte a documentação de referência em gcloud bigtable authorized-views
delete.
gcloud bigtable authorized-views delete AUTHORIZED_VIEW_ID \
--instance=INSTANCE_ID \
--table=TABLE_ID
Substitua:
AUTHORIZED_VIEW_ID
: identificador permanente da visualização autorizada.INSTANCE_ID
: identificador permanente da instância;TABLE_ID
: o identificador permanente da tabela de origem
Opcional: para impedir que a CLI gcloud mostre uma solicitação de confirmação
exigindo que você confirme ou cancele a exclusão, anexe a
flag --nointeractive
ao comando.
Java
Para saber como instalar e usar a biblioteca de cliente do Bigtable, consulte Bibliotecas de cliente do Bigtable.
Para autenticar no Bigtable, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Conferir uma lista de visualizações autorizadas para uma tabela
Console
Abra a lista de instâncias do Bigtable no Console do Google Cloud.
Clique na instância que contém a visualização autorizada.
No painel de navegação, clique em Bigtable Studio.
No Explorer, abra a tabela e Visualizações autorizadas.
gcloud
Execute o comando bigtable authorized-views list
. Para mais informações,
consulte a documentação de referência em gcloud bigtable authorized-views
list.
gcloud bigtable authorized-views list \
--instance=INSTANCE_ID \
--table=TABLE_ID
Substitua:
INSTANCE_ID
: identificador permanente da instância;TABLE_ID
: identificador permanente da tabela;
Java
Para saber como instalar e usar a biblioteca de cliente do Bigtable, consulte Bibliotecas de cliente do Bigtable.
Para autenticar no Bigtable, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Conferir detalhes sobre uma visualização autorizada
Console
Abra a lista de instâncias do Bigtable no Console do Google Cloud.
Clique na instância que contém a visualização autorizada.
No painel de navegação, clique em Bigtable Studio.
No Explorer, abra a tabela e Visualizações autorizadas.
Ao lado da visualização autorizada que você quer acessar, clique no menu de ações more_vert e em Abrir.
gcloud
Para conferir detalhes sobre uma visualização autorizada, execute o comando bigtable instances
tables authorized-views describe
. Para mais informações,
consulte a documentação de referência em gcloud bigtable authorized-views
describe.
gcloud bigtable authorized-views describe \
–-instance=INSTANCE_ID \
–-table=TABLE_ID \
AUTHORIZED_VIEW_ID
Substitua:
INSTANCE_ID
: identificador permanente da instância;TABLE_ID
: identificador permanente da tabela;AUTHORIZED_VIEW_ID
: o identificador permanente da visualização autorizada.
Java
Para saber como instalar e usar a biblioteca de cliente do Bigtable, consulte Bibliotecas de cliente do Bigtable.
Para autenticar no Bigtable, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Conceder acesso a uma visualização autorizada
Para mais informações sobre o controle de acesso, consulte Controle de acesso do Bigtable com o IAM.
Console
Abra a lista de instâncias do Bigtable no Console do Google Cloud.
Clique na instância que contém a visualização autorizada.
No painel de navegação, clique em Bigtable Studio.
No painel "Explorer", abra a tabela e Visualizações autorizadas.
Ao lado do nome da visualização autorizada, clique no menu de ação more_vert e em Conceder acesso.
Adicione pelo menos um participante e selecione o papel a que esse participante ou grupo de participantes precisa ser atribuído.
Opcional: para conceder acesso a outros papéis, clique em Adicionar outro papel e insira o principal e o papel de cada papel adicional.
Clique em Salvar.
gcloud
Para conceder acesso a uma visualização autorizada, use o comando bigtable
authorized-views add-iam-policy-binding
. Para mais informações,
consulte a documentação de referência em gcloud bigtable authorized-views
add-iam-policy-binding.
gcloud bigtable authorized-views add-iam-policy-binding AUTH_VIEW_ID \
--instance=INSTANCE_ID --table=TABLE_ID \
--member=PRINCIPAL --role=ROLE
Substitua:
AUTH_VIEW_ID
: o ID da visualização autorizadaTABLE_ID
: o ID da tabela da qual a visualização autorizada faz parte.INSTANCE_ID
: a instância que contém a tabela.PRINCIPAL
: o principal (usuário) a quem você quer conceder acesso, por exemplo,user:222larabrown@gmail.com
ROLE
: o papel que você está concedendo, comoroles/bigtable.viewer
.