Controle o acesso às colunas

Este documento mostra como controlar o acesso às colunas adicionando etiquetas de políticas do BigQuery às colunas das tabelas com o Dataform core.

Pode definir etiquetas de políticas do BigQuery em colunas de tabelas no bloco config num ficheiro SQLX de definição de tabelas.

Antes de começar

  1. Na Google Cloud consola, aceda à página Dataform.

    Aceda à página do formulário de dados

  2. Selecione ou crie um repositório.

  3. Selecione ou crie um espaço de trabalho de desenvolvimento.

  4. Crie uma tabela.

Funções necessárias

Para receber as autorizações de que precisa para adicionar uma etiqueta de política do BigQuery a uma tabela no Dataform, peça ao seu administrador para lhe conceder a função do IAM de editor do Dataform (roles/dataform.editor) em espaços de trabalho. Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

Também pode conseguir as autorizações necessárias através de funções personalizadas ou outras funções predefinidas.

Além disso, tem de conceder à sua conta de serviço do Dataform funções do BigQuery para o controlo de acesso ao nível da coluna.

Adicione uma etiqueta de política do BigQuery

Para adicionar uma etiqueta de política do BigQuery a uma coluna de tabela, siga estes passos:

  1. Aceda ao seu espaço de trabalho de desenvolvimento.
  2. No painel Ficheiros, expanda definitions/.
  3. Selecione um ficheiro SQLX de definição de tabela.
  4. No bloco config, adicione um identificador de etiqueta completo a uma coluna selecionada no seguinte formato:

    columns: {
        column_name: {
          bigqueryPolicyTags: ["FULL_TAG_IDENTIFIER"]
        }
      }
    

    Substitua FULL_TAG_IDENTIFIER pelo identificador completo da etiqueta selecionada.

  5. Opcional: clique em Formatar.

O exemplo de código seguinte mostra a etiqueta de política do BigQuery de exemplo adicionada a column1:projects/example-project/locations/us/taxonomies/123456789/policyTags/123456789

config {
  type: "table",
  columns: {
    column1: {
      description: "Some description",
      bigqueryPolicyTags: ["projects/example-project/locations/us/taxonomies/123456789/policyTags/123456789"]
    }
  }
}

SELECT "test" AS column1

O que se segue?