Se você configurou o serviço de descoberta de dados sensíveis para enviar todos os perfis de dados gerados com sucesso para o BigQuery, é possível consultar esses perfis para extrair insights sobre seus dados. Também é possível usar ferramentas de visualização, como o Data Studio, para criar relatórios personalizados adequados às suas necessidades comerciais. Como alternativa, você pode usar um relatório pré-criado fornecido pela Proteção de Dados Sensíveis, ajustá-lo e compartilhá-lo conforme necessário.
Esta página fornece exemplos de consultas SQL que podem ser usadas para saber mais sobre seus perfis de dados. Ela também mostra como visualizar perfis de dados no Data Studio.
Para mais informações sobre perfis de dados, consulte Visão geral da descoberta de dados sensíveis.
Antes de começar
Esta página pressupõe que você configurou a criação de perfil no nível da organização, da pasta ou do projeto. Na configuração de verificação de descoberta, verifique se a ação Salvar cópias do perfil dos dados no BigQuery está ativada. Para mais informações sobre como criar uma configuração de verificação de descoberta, consulte Criar uma configuração de verificação.
A tabela de saída
Neste documento, a tabela que contém os perfis de dados exportados é chamada de tabela de saída.
Verifique se você tem o ID do projeto, do conjunto de dados e da tabela de saída disponíveis. Você precisa deles para realizar os procedimentos nesta página.
A visualização latest
Quando a Proteção de Dados Sensíveis exporta perfis de dados para a tabela de saída, ela
também cria a latest visualização. Essa visualização é uma tabela virtual pré-filtrada que inclui apenas os snapshots mais recentes dos seus perfis de dados. A visualização latest tem o mesmo esquema da tabela de saída. Portanto, você pode usar as duas de forma intercambiável nas consultas SQL e nos relatórios do Data Studio. Os resultados podem ser diferentes porque a tabela de saída contém snapshots mais antigos dos perfis de dados.
A visualização latest é armazenada no mesmo local que a tabela de saída. O nome dela tem o seguinte formato:
OUTPUT_TABLE_latest_VERSION
Substitua:
- OUTPUT_TABLE: o ID da tabela que contém os perfis de dados exportados.
- VERSION: o número da versão da visualização.
Por exemplo, se o nome da tabela de saída for table-profile, a visualização latest
terá um nome como table-profile_latest_v1.
Ao usar a visualização latest em consultas SQL, use o nome completo dela, que
inclui o ID do projeto, do conjunto de dados, da tabela e o sufixo, por exemplo,
myproject.mydataset.table-profile_latest_v1.
PROJECT_ID.DATASET_ID.OUTPUT_TABLE_latest_VERSION
Escolher entre a tabela de saída e a visualização latest
A visualização latest inclui apenas os snapshots de perfil dos dados mais recentes, enquanto a tabela de saída tem todos os snapshots de perfil dos dados, incluindo os desatualizados. Por exemplo, uma consulta na tabela de saída pode retornar vários
perfis de dados de coluna
para a mesma coluna, um para cada vez que a coluna foi criada.
Ao escolher entre usar a tabela de saída e a visualização latest nas consultas SQL ou nos relatórios do Data Studio, considere o seguinte:
A visualização
latesté útil se você tiver recursos de dados que foram recriados e quiser ver apenas os perfis mais recentes, não as versões anteriores. Ou seja, você quer ver o estado atual dos seus dados de perfil.A tabela de saída é útil se você quiser ter uma visualização histórica dos seus dados criados. Por exemplo, você está tentando determinar se sua organização já armazenou um InfoType específico ou quer ver as mudanças que um perfil dos dados específico passou.
Amostras de consultas SQL
Esta seção fornece exemplos de consultas que podem ser usadas ao analisar perfis de dados. Para executar essas consultas, consulte Como executar consultas interativas.
Nos exemplos a seguir, substitua TABLE_OR_VIEW por um destes:
- O nome da tabela de saída, que é a tabela que contém os perfis de dados exportados, por exemplo,
myproject.mydataset.table-profile. - O nome da visualização
latestda tabela de saída, por exemplo,myproject.mydataset.table-profile_latest_v1.
Em ambos os casos, é necessário incluir o ID do projeto e do conjunto de dados.
Para mais informações, consulte
Escolher entre a tabela de saída e a visualização latest nesta
página.
Para resolver qualquer erro, consulte Mensagens de erro.
Listar todas as colunas que têm uma pontuação de texto livre alta e evidências de outras correspondências de infoType
SELECT
column_profile.table_full_resource,
column_profile.COLUMN,
other_matches.info_type.name,
column_profile.profile_last_generated
FROM
`TABLE_OR_VIEW`
LEFT JOIN UNNEST(column_profile.other_matches) AS other_matches
WHERE
column_profile.free_text_score = 1
AND ( column_profile.column_info_type.info_type.name>""
OR ARRAY_LENGTH(column_profile.other_matches)>0 )
Para informações sobre como corrigir essas descobertas, consulte Estratégias recomendadas para mitigar o risco de dados.
Para mais informações sobre as métricas Pontuação de texto livre e Outros infoTypes , consulte Perfis de dados de coluna.
Listar todas as tabelas que contêm uma coluna de números de cartão de crédito
SELECT
column_profile.table_full_resource,
column_profile.profile_last_generated
FROM
`TABLE_OR_VIEW`
WHERE
column_profile.column_info_type.info_type.name="CREDIT_CARD_NUMBER"
CREDIT_CARD_NUMBER é um InfoType integrado
que representa um número de cartão.
Para informações sobre como corrigir essas descobertas, consulte Estratégias recomendadas para mitigar o risco de dados.
Listar perfis de tabela que contêm colunas de números de cartão de crédito, CPFs ou CNPJs e nomes de pessoas
SELECT
table_full_resource,
COUNT(*) AS count_findings
FROM (
SELECT
DISTINCT column_profile.table_full_resource,
column_profile.column_info_type.info_type.name
FROM
`TABLE_OR_VIEW`
WHERE
column_profile.column_info_type.info_type.name IN ('PERSON_NAME',
'CREDIT_CARD_NUMBER',
'US_SOCIAL_SECURITY_NUMBER')
ORDER BY
column_profile.table_full_resource ) ot1
GROUP BY
table_full_resource
#increase this number to match the total distinct infoTypes that must be present
HAVING
count_findings>=3
Essa consulta usa os seguintes infoTypes integrados:
CREDIT_CARD_NUMBER: representa um número de cartãoPERSON_NAME: representa o nome completo de uma pessoaUS_SOCIAL_SECURITY_NUMBERrepresenta um número de CPF ou CNPJ dos EUA
Para informações sobre como corrigir essas descobertas, consulte Estratégias recomendadas para mitigar o risco de dados.
Listar buckets em que a pontuação de sensibilidade é SENSITIVITY_HIGH
SELECT file_store_profile.file_store_path, file_store_profile.resource_visibility, file_store_profile.sensitivity_score
FROM `TABLE_OR_VIEW`
WHERE file_store_profile.sensitivity_score.score ='SENSITIVITY_HIGH'
;
Para mais informações, consulte Perfis de dados do armazenamento de arquivos.
Listar todos os caminhos de bucket, clusters e extensões de arquivo verificados em que a pontuação de sensibilidade é SENSITIVITY_HIGH
SELECT file_store_profile.file_store_path, summaries.file_cluster_type.cluster, STRING_AGG(scanned_file_extensions.file_extension) AS scanned_extensions, file_store_profile.profile_last_generated.timestamp
FROM `TABLE_OR_VIEW`
LEFT JOIN UNNEST(file_store_profile.file_cluster_summaries) as summaries
LEFT JOIN UNNEST(summaries.file_store_info_type_summaries) as info_types
LEFT JOIN UNNEST(summaries.file_extensions_scanned) as scanned_file_extensions
WHERE file_store_profile.data_source_type.data_source = 'google/storage/bucket'
AND summaries.sensitivity_score.score ='SENSITIVITY_HIGH'
GROUP BY 1, 2, 4
;
Para mais informações, consulte Perfis de dados do armazenamento de arquivos.
Listar todos os caminhos de bucket, clusters e extensões de arquivo verificados em que números de cartão de crédito foram detectados
SELECT file_store_profile.file_store_path, summaries.file_cluster_type.cluster, STRING_AGG(scanned_file_extensions.file_extension) AS scanned_extensions
FROM `TABLE_OR_VIEW`
LEFT JOIN UNNEST(file_store_profile.file_cluster_summaries) as summaries
LEFT JOIN UNNEST(summaries.file_store_info_type_summaries) as info_types
LEFT JOIN UNNEST(summaries.file_extensions_scanned) as scanned_file_extensions
WHERE file_store_profile.data_source_type.data_source = 'google/storage/bucket'
AND info_types.info_type.name='CREDIT_CARD_NUMBER'
GROUP BY 1, 2
;
CREDIT_CARD_NUMBER é um InfoType integrado
que representa um número de cartão.
Para mais informações, consulte Perfis de dados do armazenamento de arquivos.
Listar todos os caminhos de bucket, clusters e extensões de arquivo verificados em que um número de cartão, nome de pessoa ou CPF ou CNPJ dos EUA foi detectado
SELECT file_store_profile.file_store_path, summaries.file_cluster_type.cluster, STRING_AGG(scanned_file_extensions.file_extension) AS scanned_extensions
FROM `TABLE_OR_VIEW`
LEFT JOIN UNNEST(file_store_profile.file_cluster_summaries) as summaries
LEFT JOIN UNNEST(summaries.file_store_info_type_summaries) as info_types
LEFT JOIN UNNEST(summaries.file_extensions_scanned) as scanned_file_extensions
WHERE file_store_profile.data_source_type.data_source = 'google/storage/bucket'
AND info_types.info_type.name IN ('CREDIT_CARD_NUMBER', 'PERSON_NAME', 'US_SOCIAL_SECURITY_NUMBER')
GROUP BY 1, 2
;
Essa consulta usa os seguintes infoTypes integrados:
CREDIT_CARD_NUMBER: representa um número de cartãoPERSON_NAME: representa o nome completo de uma pessoaUS_SOCIAL_SECURITY_NUMBERrepresenta um número de CPF ou CNPJ dos EUA
Para mais informações, consulte Perfis de dados do armazenamento de arquivos.
Trabalhar com perfis de dados no Data Studio
Para visualizar seus perfis de dados no Data Studio, você pode usar um relatório pré-criado ou você pode criar o seu próprio.
Usar um relatório pré-criado
A Proteção de Dados Sensíveis fornece um relatório pré-criado do Data Studio que destaca os insights avançados dos perfis de dados. O painel da Proteção de Dados Sensíveis é um relatório de várias páginas que oferece uma visão geral dos seus perfis de dados, incluindo detalhamentos por risco, infoType e local. Explore as outras guias para ver visualizações por região geográfica e risco de postura ou detalhar métricas específicas. Você pode usar esse relatório pré-criado no estado em que se encontra ou personalizá-lo conforme necessário. Essa é a versão recomendada do relatório pré-criado.
Para conferir o relatório pré-criado com seus dados, insira os valores necessários no URL a seguir. Em seguida, copie o URL resultante para o navegador.
https://lookerstudio.google.com/c/u/0/reporting/create?c.reportId=c9826374-e016-4c96-a495-7281328375c6&ds.connector=BIG_QUERY&ds.projectId=PROJECT_ID&ds.datasetId=DATASET_ID&ds.tableId=TABLE_OR_VIEW&ds.type=TABLE&ds.useFreshSchema=false
Substitua:
- PROJECT_ID: o projeto que contém a tabela de saída.
- DATASET_ID: o conjunto de dados que contém a tabela de saída.
TABLE_OR_VIEW: um destes:
- O nome da tabela de saída, que é a tabela que contém os perfis de dados exportados, por exemplo,
myproject.mydataset.table-profile. - O nome da visualização
latestda tabela de saída, por exemplo,myproject.mydataset.table-profile_latest_v1.
Para mais informações, consulte Escolher entre a tabela de saída e a visualização
latestnesta página.- O nome da tabela de saída, que é a tabela que contém os perfis de dados exportados, por exemplo,
Pode levar alguns minutos para que o Data Studio carregue o relatório com seus dados. Se você encontrar erros ou se o relatório não for carregado, consulte Resolver erros com o relatório pré-criado nesta página.
No exemplo a seguir, o painel mostra que dados de baixa e alta sensibilidade estão presentes em vários países do mundo.
Versão anterior do relatório pré-criado
A primeira versão do relatório pré-criado ainda está disponível no seguinte endereço:
https://lookerstudio.google.com/c/u/0/reporting/create?c.reportId=907a2b73-ffe4-40b2-b9a1-c2aa0bbd69fd&ds.connector=BIG_QUERY&ds.projectId=PROJECT_ID&ds.datasetId=DATASET_ID&ds.tableId=TABLE_OR_VIEW&ds.type=TABLE&ds.useFreshSchema=false
Criar um relatório
O Data Studio permite criar relatórios interativos. Nesta seção, você cria um relatório de tabela simples no Data Studio com base nos perfis de dados exportados para a tabela de saída no BigQuery.
Verifique se você tem o
ID do projeto, do conjunto de dados e da tabela de saída ou da
latest visualização disponíveis. Você precisa deles para realizar esse procedimento.
Este exemplo mostra como criar um relatório contendo uma tabela que mostra cada infoType informado nos seus perfis de dados e a frequência correspondente.
Em geral, são cobrados os custos de uso do BigQuery ao acessar o BigQuery pelo Data Studio. Saiba mais em Como visualizar dados do BigQuery com o Data Studio.
Para criar um relatório, faça o seguinte:
- Abra o Data Studio e faça login.
- Clique em Relatório em branco.
- Na guia Conectar aos dados, clique no cartão do BigQuery.
- Se necessário, autorize o Data Studio a acessar seus projetos do BigQuery.
Conecte-se aos dados do BigQuery:
- Em Projeto, selecione o projeto que contém a tabela de saída. Você pode pesquisar o projeto nas guias Projetos recentes, Meus projetos, e Projetos compartilhados.
- Em Conjunto de dados, selecione o conjunto de dados que contém a tabela de saída.
Em Tabela, selecione a tabela de saída ou a
latestvisualização da tabela de saída.Para mais informações, consulte Escolher entre a tabela de saída e a visualização
latestnesta página.Clique em Adicionar.
Na caixa de diálogo que aparece, clique em Adicionar ao relatório.
Para adicionar uma tabela que mostra cada infoType informado e a frequência correspondente (contagem de registros), siga estas etapas:
- Clique em Adicionar um gráfico.
- Selecione um estilo de tabela.
Clique na área em que você quer posicionar o gráfico.
O gráfico aparece no formato de tabela.
Redimensione a tabela conforme necessário.
Enquanto a tabela estiver selecionada, as propriedades dela vão aparecer no painel Gráfico.
No painel Gráfico, na guia Configuração, remova as dimensões e métricas pré-selecionadas.
Em Dimensão, adicione
column_profile.column_info_type.info_type.nameoufile_store_profile.file_cluster_summaries.file_store_info_type_summaries.info_type.name.Esses exemplos fornecem dados nos níveis de coluna e cluster de arquivos. Você também pode tentar outras dimensões. Por exemplo, é possível usar dimensões de nível de tabela e de bucket.
Em Métrica, adicione Contagem de registros.
A tabela resultante será semelhante a esta:
Saiba mais sobre tabelas no Data Studio.
Resolver erros com o relatório pré-criado
Se você encontrar erros, controles ou gráficos ausentes ao carregar o relatório pré-criado, verifique se ele está usando os campos mais recentes:
Se o relatório pré-criado estiver conectado à tabela de saída, confirme se ela está anexada a uma configuração de verificação de descoberta ativa. Para conferir as configurações das suas configurações de verificação, consulte Ver uma configuração de verificação.
Se o relatório pré-criado estiver conectado à visualização
latest, confirme se ela ainda está presente no BigQuery. Se estiver presente, tente fazer uma mudança na visualização. Como alternativa, faça uma cópia da visualização e conecte o relatório pré-criado a essa cópia. Para mais informações sobre a visualizaçãolatest, consulte A visualizaçãolatestnesta página.
Se os erros continuarem aparecendo depois de tentar essas etapas, entre em contato com o Cloud Customer Care.
A seguir
Saiba mais sobre as ações que você pode realizar para corrigir as descobertas do perfil dos dados.