Olá, tudo bem contigo?
Há um tempo átras muito tem se falado sobre LGPD.
E com os diversos vazamentos de dados que diversas empresas já sofreram, esse tema vem se tornando cada vez mais importante dentro das empresas e especificas nas áreas de dados.
Nesse artigo irei trazer um exemplo de como podemos proteger os dados sensíveis utilizando Apache Hop / Pentaho.
nesse exemplo teremos o nome de um colaborador e em vez de armazenar o nome, iremos criar uma coluna utilizando o tipo: MD5, e armazenar uma string hexadecimal no lugar do nome do colaborador.
Iremos utilizar o step: add a checksum para esta função, informando as seguintes opções:
- Tipo MD5.
- Resultado utilizando o Tipo Hexadecimal.
- Nome da coluna que será criada.
- Coluna utilizada como referência para gerar o campo hash.
Ao executar o pipeline temos a coluna nome e a coluna hash, dessa forma em vez de armazenar o nome do colaborador podemos ter este valor hash, uma abordagem simples e muito eficaz na maioria dos casos para preservar dados sensíveis como nome, email e telefone por exemplo, dados pessoais.
Rafael achei bastante importante este tipo de abordagem, mas fiquei com uma dúvida: Caso coloquemos no Banco do DW a informação criptografada, ou mesmo no Banco de produção, como poderíamos retirar o dado original, caso fosse necessário?
A forma ideal seria uma chave que pudéssemos usar e na lógica das visualizações pudéssemos usar para “trazer” o dado original, quando necessário, deixando no Banco o dado criptografado.
Isso poderia ter uma flag, dados criptografado e dados real.
e com essa flag poderia controlar quem teria permissão e que não teria para visualizar o dado real, algo assim.
Rafael parabéns pela abordagem.
Uma dúvida, no teu exemplo, você criou um step para transformar o conteúdo da coluna nome numa outra coluna hash, caso eu queira fazer isso para outras colunas como por exemplo, telefone, email, endereço, para cada uma das colunas eu preciso criar um step de transformação hash ?
Isso mesmo Thiago.
Agora imagina que você tenha dois ID, o de produto e do cliente por exemplo, ai se você utiliza esses dois campos num mesmo step, seria como fosse um valor hash considerando as duas colunas.
Espero ter ajudado.
Obrigado.