Embora coletar números de telefone em uma aplicação seja feito por diversos motivos válidos, há mais riscos e responsabilidades que os números de telefone podem trazer legalmente e que mais desenvolvedores e engenheiros de aplicação devem proteger-se. Os números de telefone, diferentemente dos emails de usuário (que muitos desenvolvedores consideram PII e tratam com cuidados adicionais), muitas vezes não são redigidos dos logs, podem não ser filtrados e podem estar armazenados sem anonimização.
Este artigo apresenta práticas específicas que podem ajudar nisso, assumindo que o leitor busca atuar em conformidade com a LGPD na maior parte (as práticas mudariam minimamente para o GDPR e outros marcos legislativos similares).
Por que números de telefone representam mais risco e responsabilidade do que outros identificadores
Segundo a LGPD, o número de telefone é dado pessoal e carrega as mesmas obrigações com relação à finalidade, consentimento e exclusão. Mais especificamente, números de telefone coletados legalmente e com consentimento do usuário devem:
possuir meios para excluir o número de telefone do usuário, se solicitado (mesmo em backups).
demonstrar a finalidade da coleta dos dados (não podem vazar o número de telefone).
considerar as consequências reais do vazamento de dados para o usuário (não é dado de "baixo risco"; usuários podem ser vítimas de phishing via SMS, clonagem no WhatsApp, entre outros).
Erro Comum #1: Números de telefone sem máscara em logs de aplicação
Ao procurar a causa de uma falha em uma gateway de SMS ou ao analisar um log de requisição de aplicação, encontrar um número de telefone completo de SMS não é raro. Exemplos que não utilizam nenhuma forma de ofuscação são normalmente observados. Isso geralmente resulta de práticas descuidadas na gestão de logs e pode ser resolvido com o seguinte padrão simples:
+55 11 9****-1234
Logs devem conter números de telefone mascarados, a menos que um nível específico de acesso seja concedido. Para fins de depuração do número, o acesso elevado deve ser registrado como uma auditoria. Há uma grande diferença entre ter números completos nos logs e um número específico disponível em um log de auditoria.
Erro Comum #2: Dados reais de usuário no ambiente de staging
Uma violação ainda maior da LGPD (Lei Geral de Proteção de Dados) é copiar o banco de dados de produção para o ambiente de staging para simplificar testes. Isso expõe dados reais de usuário a um ambiente de produção não protegido.
Duas alternativas que ajudam a manter a qualidade dos testes são as seguintes:
Antes de serem carregados no ambiente de staging, os dados devem ser anonymizados ou pseudonimizados para criar dados sintéticos válidos que mantenham seu formato.
Quando SMS reais são necessários no fluxo para comunicação, utilize um número virtual dedicado para testes. Em vez de usar o número real de um funcionário, que representa uma violação de privacidade significativa, linhas dedicadas para QA são mantidas. Serviços como NumeroVirtual têm sido úteis para receber SMS, confirmando que SMS reais foram enviados para testes, enquanto mantêm a separação dos dados de teste e os dados pessoais dos usuários envolvidos e da equipe de desenvolvimento.
Retenção indefinida
Um problema comum com sistemas de retenção de dados é que, mesmo após a exclusão de uma conta, os números ainda podem ser armazenados indefinidamente. A LGPD informa claramente que as políticas de retenção devem ter propósito, e a justificativa de "poderemos precisar no futuro" não é aceitável.
É uma boa prática estabelecer uma política_de_retention clara para cada tipo de dado e automatizar os sistemas de limpeza. Não confie na memória de indivíduos para realizar a retenção após seis meses.
Direito de exclusão incompleto
Excluir o número principal do usuário é apenas a parte simples. A tarefa mais complexa é remover esse número de todos os sistemas e subsistemas relacionados. Estes incluem, mas não se limitam a:
Trilhas de auditoria
Backups
Sistemas de logs
Todos os serviços de terceiros
É importante entender os sistemas e subsistemas onde esses dados serão propagados, para que, durante uma solicitação de exclusão, o número não seja encontrado armazenado em múltiplos locais distintos.
Conformidade legal
Para evitar riscos legais e de segurança ao lidar com dados sensíveis de usuários, é melhor introduzir um projeto de sistema durante os estágios iniciais de uma aplicação que considere as políticas de retenção de dados, mascaramento de identidade e remoção de dados.
Quais são as políticas relacionadas aos dados de número de telefone em seus ambientes de teste? Se você já passou pelo processo de exclusão de dados da LGPD, o que achou mais difícil? Geralmente, não é a tabela principal de dados que apresenta maior problema, mas os dados periféricos a ela.
Top comments (0)