Casos de uso

Detectando a residência de dados para conformidade com o GDPR

A conformidade com o GDPR afeta mais partes da arquitetura técnica de um produto do que a maioria das equipes espera no início, e um dos requisitos mais concretos com que uma empresa de SaaS se deparou foi precisar saber, de forma confiável e no início de cada sessão, se um visitante estava se conectando de dentro da União Europeia, já que essa resposta decidia para qual região de armazenamento os dados de uma nova conta deveriam ser direcionados e qual fluxo de consentimento precisava ser exibido antes de começar qualquer coleta de dados não essenciais.

A localização autodeclarada não era confiável o bastante para isso. Pedir a um visitante que declare o próprio país durante o cadastro gera respostas que as pessoas às vezes pulam, digitam errado ou simplesmente erram ao se cadastrar com pressa, e a empresa precisava de um sinal que não dependesse de um campo de formulário preenchido corretamente para tomar uma decisão relevante para a conformidade.

/v1/ip deu à empresa um sinal independente, obtido no servidor, para isso. Resolver o endereço IP de um visitante em um campo de país, verificado automaticamente no início de uma nova sessão, informava ao servidor de aplicação da empresa se deveria aplicar as regras de consentimento e de tratamento de dados específicas da UE antes mesmo de o visitante interagir com qualquer coisa na página, e não depois, quando alguma coleta de dados já tivesse acontecido.

A empresa tratou o país detectado como um sinal operacional forte para esse fim especificamente porque as proteções do próprio GDPR são geralmente entendidas como aplicáveis com base em onde a pessoa está quando seus dados são processados, e não com base na sua nacionalidade ou no local da sede da empresa, o que fez de uma verificação de localização baseada em IP um sinal realmente relevante para essa questão de conformidade em particular, de uma forma que não seria necessariamente para, por exemplo, determinar qual legislação tributária nacional se aplicava a uma transação. A assessoria jurídica da própria empresa revisou essa abordagem especificamente e a tratou como um elemento razoável de um programa de conformidade mais amplo, e não como uma solução completa por si só.

Os casos extremos foram tratados de forma conservadora, e não otimista. Um visitante cujo IP era resolvido de forma ambígua, ou em que uma VPN ou um proxy era detectado usando o campo extras disponível com mg_extras=1 ou com o header X-MG-Extras, recebia por padrão o tratamento mais rigoroso, compatível com a UE, em vez do padrão mais leve, com base no raciocínio de que aplicar proteções de privacidade mais fortes a um visitante que não precisava delas era um problema muito menor do que aplicar proteções mais fracas a um que precisava. Esse padrão conservador foi uma decisão de política deliberada, tomada com orientação jurídica, e não algo determinado pela própria consulta de localização.

A empresa registrava qual sinal de país tinha orientado a decisão de tratamento de dados de cada sessão, junto com um timestamp, como parte da sua própria documentação de conformidade, o que lhe dava um registro concreto e auditável de como essas decisões eram tomadas caso um regulador ou auditor perguntasse, em vez de uma afirmação impossível de verificar sobre como o sistema se comportava em geral.

Nada disso substitui o trabalho mais amplo de conformidade com o GDPR em torno da redação do consentimento, dos direitos dos titulares dos dados ou dos acordos de processamento de dados da empresa, e a empresa deixou claro internamente que a detecção de país baseada em IP resolvia uma parte específica e restrita de um quadro de conformidade muito maior: a parte de direcionar uma sessão para as regras de tratamento corretas no momento em que ela começava.

O volume acompanhou o volume de sessões, folgadamente dentro da cota diária gratuita para um tráfego moderado e passando para o crédito pré-pago de forma previsível à medida que o produto crescia. A documentação do endpoint está em /docs/ipv4-lookup/ e /docs/ipv6-lookup/.