Introdução à classificação¶
Este tópico fornece informações sobre como funciona a classificação.
Para obter informações sobre como usar classificadores personalizados, consulte Classificação personalizada de dados.
Neste tópico:
Visão geral¶
A classificação é um processo de múltiplas etapas que associa tags de sistema definidas pelo Snowflake às colunas analisando os campos e metadados quanto a dados pessoais; estes dados podem ser rastreados por um engenheiro de dados usando SQL e Snowsight. Um engenheiro de dados pode classificar colunas em uma tabela para determinar se a coluna contém certos tipos de dados que precisam ser rastreados ou protegidos, como um identificador exclusivo (dados de passaporte ou conta bancária), um quase identificador (a cidade em que o indivíduo vidas) ou um valor sensível (o salário de um indivíduo).
Ao rastrear os dados com uma tag do sistema e protegê-los usando uma política de mascaramento ou de acesso a linhas, o engenheiro de dados pode melhorar a postura de governança associada aos dados. O resultado geral das etapas de classificação e proteção de dados é facilitar o cumprimento dos regulamentos de privacidade de dados.
Você pode classificar uma única tabela ou tabelas em um esquema. O Snowflake fornece tags de sistema predefinidas para permitir que você classifique e defina tags nas colunas, ou você pode usar classificadores personalizados para definir sua própria categoria semântica com base no conhecimento dos seus dados. Você também pode escolher uma abordagem que use tags do sistema Snowflake e classificadores personalizados, dependendo da postura de governança que deseja adotar.
A classificação proporciona os seguintes benefícios aos administradores de privacidade e governança de dados:
- Acesso aos dados:
Os resultados da classificação dos dados da coluna podem dar informações aos administradores de identidade e de acesso para avaliar e manter suas hierarquias de funções do Snowflake para garantir que as funções do Snowflake tenham o acesso apropriado a dados sensíveis ou PII.
- Compartilhamento de dados:
O processo de classificação pode ajudar a identificar e confirmar o local de armazenamento dos dados PII. Posteriormente, um provedor de compartilhamento de dados pode usar os resultados da classificação para determinar se deve compartilhar dados e como disponibilizar os dados PII a um consumidor que compartilha dados.
- Aplicação da política:
O uso de colunas contendo dados PII, tais como colunas de referência em tabelas de base para criar uma exibição ou exibição materializada, pode ajudar a determinar a melhor abordagem para proteger os dados com uma política de mascaramento ou uma política de acesso a linhas.
Tipos de dados e objetos suportados¶
O Snowflake oferece suporte à classificação de dados armazenados em todos os tipos de tabelas e exibições, incluindo tabelas externas, exibições materializadas e exibições seguras.
Você pode classificar a tabela e exibir colunas para todos os tipos de dados com suporte exceto para os seguintes tipos de dados:
GEOGRAPHY
BINARY
VARIANT
Observe que você pode classificar uma coluna com o tipo de dados VARIANT quando o tipo de dados de coluna puder ser convertido em um tipo de dados NUMBER ou STRING. O Snowflake não classifica a coluna se a coluna contém JSON, XML ou outros dados semiestruturados.
Se uma tabela tiver colunas com um tipo de dados sem suporte, ou a coluna tiver todos os valores NULL, o processo de classificação ignora as colunas e não as inclui no resultado.
Importante
Se seus dados representarem valores NULL com um valor diferente de NULL, a precisão dos resultados da classificação pode ser impactada.
Custos computacionais¶
O processo de classificação requer recursos computacionais que são fornecidos pelo warehouse que está em uso e em execução quando a classificação é realizada.
O tempo necessário para classificar os dados em uma tabela/exibição (e, portanto, o número de créditos consumidos pelo warehouse) é uma função da quantidade de dados a serem classificados.
Em especial, se uma tabela ou exibição tiver um grande número de colunas compatíveis com a classificação, o tempo de processamento pode ser impactado. No entanto, como regra geral, a velocidade de processamento é proporcional ao tamanho do warehouse. Em outras palavras, cada aumento de tamanho de um warehouse (e X-small para Small) normalmente reduz o tempo de processamento pela metade.
Use as seguintes diretrizes gerais para selecionar um tamanho de warehouse:
Sem preocupação com o tempo de processamento: warehouse X-Small.
Até 100 colunas em uma tabela: warehouse Small.
101 a 300 colunas em uma tabela: warehouse Medium.
301 colunas ou mais em uma tabela: warehouse Large.
Para obter mais detalhes, consulte Considerações sobre warehouses.
Recomendações¶
Para aproveitar o recurso de classificação e otimizar seus recursos de rastreamento de dados PII, faça o seguinte:
- Validação:
Consulte primeiro as exibições do Account Usage:
ACCESS_HISTORY: determinar os objetos de exibição e tabela que são acessados com mais frequência.
OBJECT_DEPENDENCIES: determinar referências de metadados entre dois ou mais objetos.
Use os resultados da consulta para priorizar a atribuição das tags do sistema de classificação em nível de esquema ou de banco de dados.
- Nomes de coluna:
Use nomes sensíveis de colunas em seus objetos de tabela e treine os criadores de tabelas para aderir às diretrizes de criação de tabelas internas.
- Tipos de dados:
Use tipos de dados sensíveis para as colunas. Por exemplo, uma coluna AGE deve ter o tipo de dados NUMBER.
- VARIANT:
Se uma coluna tiver um tipo de dados VARIANT, use o comando FLATTEN na coluna antes de classificar a tabela.
- Warehouse:
Utilize o tamanho adequado do warehouse ao classificar os dados. Para obter mais detalhes, consulte Custos computacionais (neste tópico).
Gerenciamento de classificação¶
Referência de privilégios¶
O modelo de privilégio para classificação de dados permite que o administrador de privacidade de dados determine quais personas podem classificar tabelas e marcar colunas. Por exemplo, uma única função pode ter todos os privilégios necessários ou o administrador de privacidade de dados pode delegar concessões a diferentes funções para satisfazer os requisitos de separação de funções (SoD). Um exemplo de combinação viável de concessões é mostrado na seção Início da classificação de dados de Uso da classificação de dados.
Como administrador, você tem diferentes opções dependendo de como deseja gerenciar quais funções ou personas estão envolvidas. As opções proporcionam flexibilidade à postura de governança que você deseja adotar. Por exemplo:
O proprietário da tabela (a função com privilégio OWNERSHIP na tabela) pode classificar a tabela e definir tags do sistema nas colunas.
Uma função personalizada que tenha o privilégio SELECT na tabela e o privilégio APPLY TAG na conta pode classificar a tabela e definir tags do sistema nas colunas.
Se quiser que diferentes funções ou personas estejam envolvidas na classificação e marcação de colunas, você pode conceder o privilégio SELECT na tabela a uma função e o privilégio APPLY TAG na conta a uma função diferente.
A tabela a seguir resume as diferentes opções de concessão para classificar uma tabela, definir as tags do sistema de classificação de dados em colunas e realizar ambas as tarefas:
Privilégio ou função |
Classificar tabela(s) |
Definir tags do sistema em colunas |
---|---|---|
SELECT na tabela ou exibição. |
✔ |
|
OWNERSHIP na tabela. |
✔ |
✔ |
APPLY TAG na conta. |
✔ |
|
Função ACCOUNTADMIN. |
✔ |
|
OWNERSHIP no banco de dados ou esquema. |
Importante
A classificação de tabelas requer um warehouse em execução. A função usada para classificar uma tabela deve ter, no mínimo, o privilégio USAGE em um warehouse.
Você pode conceder a função de banco de dados SNOWFLAKE.GOVERNANCE_VIEWER a uma função de conta para permitir que os usuários com essa função de conta consultem a exibição DATA_CLASSIFICATION_LATEST para ver os resultados mais recentes de uma tabela classificada.