Descaracterização de dados

Durante o desenvolvimento de sistemas muitas vezes precisamos de dados para fazer testes e corrigir bugs, uma das estratégias...

Dextra

View posts by Dextra
Somos especialistas em desenvolvimento de software sob medida para negócios digitais. Pioneiros na adoção de metodologias de gestão ágil, combinamos processos de design, UX, novas tecnologias e visão de negócio, desenvolvendo soluções que criam oportunidades para nossos clientes. A Dextra faz parte da Mutant, empresa B2B líder no mercado brasileiro e especialista em Customer Experience para plataformas digitais.
Data de publicação: 26/06/2014
Você sabia que a descaracterização de dados é uma alternativa antes da disponibilização para a equipe de desenvolvimento? Confira nosso artigo e saiba mais!

Durante o desenvolvimento de sistemas muitas vezes precisamos de dados para fazer testes e corrigir bugs, uma das estratégias comumente utilizadas para obter uma base com volume real de dados é  obter uma cópia da base de dados de produção, mesmo que para desenvolver não precisemos dos dados reais.
Mesmo que todos os envolvidos no processo de desenvolvimento estejam trabalhando sob um contrato de NDA (Non disclosure agreement), esta estratégia leva a criação de brechas de segurança e privacidade dos dados cada vez que uma cópia é realizada e principalmente, transferida de um meio para outro (muitas vezes as cópias são disponibilizadas via e-mail, pendrive e outros meios com baixa segurança).
Para minimizar este problema, uma das alternativas é a descaracterização dos dados da base antes da disponibilização para a equipe de desenvolvimento. Esta técnica é um pouco trabalhosa e requer conhecimento tanto sobre a estrutura da base quanto sobre o conteúdo gravado e quanto relevante este dado é para o desenvolvimento e testes, por isso muitas vezes é descartada pelo DBA ou responsável pela disponibilização da base.
Apesar do trabalho, muitas vezes dependendo da confidencialidade de dados, a descaracterização é viável e estratégica para disponibilizar um ambiente de homologação com volume de dados reais, por exemplo. Para alguns, a descaracterização de algumas poucas colunas ou tabelas que possuem informações mais sensíveis pode ser suficiente.
Abaixo, segue algumas técnicas para descaracterização dos dados, a maioria delas faz uso das funções SQL para isso:
1 – Embaralhar as chaves primárias, com isso temos dados reais mas não saberemos de quem são as informações elas acabam perdendo um pouco o sentido
2 – Mudar o encoding dos dados, com isso os textos ficam “embaralhados” e sem sentido, mas considerando que encoding sempre é um problema não gosto muito dessa alternativa. Outra opção é usar um algoritmo de criptografia.
3 – Trocar todos os valores por nome do campo + id no caso de campos de texto. Ex: Nome1, Nome2, Tel1, Tel 2,Email1, Email2. Parece simples mas perdemos algumas coisas como por exemplo campos em que a quantidade de caracteres que é relevantes para montar as telas, etc.
4 – Embaralhamento de letras. Depende de uma lógica implementada pelo desenvolvedor, é trabalhosa e pode não ser eficiente. Pode-se usar uma função que use Random para decidir qual letra será utilizada para substituir.
5 – Variação numérica. Para descaracterização de números pode-se realizar uma variação numérica do valor original, como por exemplo 10% ou uma multiplicação por um número gerado aleatóriamente, e assim não trabalharemos com os valores reais mas sim com valores aproximados que ainda são fidedignos para testes.
6 – Atribuir NULL às informações mais sensíveis. Se for definido que alguns dados são os mais sensíveis mas eles não são significativos para o desenvolvimento talvez possamos atribuir nulo para aquela coluna.
7 – Truncar dados. Para alguns dados pode ser mais fácil truncar alguns caracteres por exemplo no campo de endereço podemos pegar os primeiros 3 caracteres e com sorte teremos somente Rua e Av. como dados para teste.
8 – Geração de dados. Sempre existe a opção de não usar a base de dados de produção e gerar os dados mas isso pode produzir valores não fidedignos aos de produção. Minha sugestão é utilizar esta abordagem no caso de campos de números de documentos por exemplo.
Independente da técnica utilizada, é essencial neste processo que exista confiança entre fornecedor e contratante e que todos os envolvidos estejam preocupados com a segurança, privacidade e confidencialidade dos dados do ambiente de produção.
Fonte: https://www.simple-talk.com/sql/database-administration/obfuscating-your-sql-server-data/

Dextra

View posts by Dextra
Somos especialistas em desenvolvimento de software sob medida para negócios digitais. Pioneiros na adoção de metodologias de gestão ágil, combinamos processos de design, UX, novas tecnologias e visão de negócio, desenvolvendo soluções que criam oportunidades para nossos clientes. A Dextra faz parte da Mutant, empresa B2B líder no mercado brasileiro e especialista em Customer Experience para plataformas digitais.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

vinte − cinco =

Posts relacionados

  1. Sobre a Dextra

    Somos especialistas em desenvolvimento de software sob medida para negócios digitais. Pioneiros na adoção de metodologias de gestão ágil, combinamos processos de design, UX, novas tecnologias e visão de negócio, desenvolvendo soluções que criam oportunidades para nossos clientes.

  2. Categorias

Scroll to top