Pular para o conteúdo
Concedo
Comece grátis
Menu

Segurança e privacidade dos dados no Concedo

Publicado em 24 de agosto de 2026 · atualizado em 29 de setembro de 2026

Versão 1.4, vigente desde 29 de setembro de 2026.

Uma ferramenta que existe para proteger dados de visitante não pode ser, ela própria, um banco de dados de visitantes. As seções abaixo descrevem o que o código faz e como cada mecanismo é verificado.

O art. 6º, III da LGPD exige que o tratamento se limite ao mínimo necessário para a finalidade. A nossa finalidade, como operador, é uma só: produzir prova de que um consentimento existiu. Tudo o que não sustenta essa prova fica de fora do registro, e foi esse critério, campo a campo, que definiu o que o registro guarda.

O IP do visitante nunca é gravado

O endereço IP chega na requisição de consentimento porque é assim que a internet funciona. Ele morre ali. Nenhuma tabela do banco guarda IP de visitante, nenhum log de aplicação escreve IP, nenhum campo JSON o carrega.

A única tabela com IP é o registro de acesso ao painel, de quem é cliente do Concedo e entra nele: IP, data e hora de cada login, por seis meses, porque o art. 15 do Marco Civil da Internet exige. Ela nunca recebe dado de visitante, não aparece em tela nem em export, e só sai por ordem judicial.

O que fica gravado é um identificador derivado:

salt_do_dia   = sha256(semente_secreta + ":" + AAAA-MM-DD)
visitor_hash  = sha256(ip + "|" + user_agent + "|" + salt_do_dia)

O IP e o user agent existem apenas em memória, durante o processamento da requisição, e saem dela como um hash de mão única.

Por que sal diário e não sal fixo

Com sal fixo, quem tivesse a semente e uma lista de IPs poderia recalcular os hashes e reidentificar visitantes de qualquer época do banco. O hash daria uma falsa sensação de anonimato: o dado continuaria reversível por força bruta sobre um espaço pequeno, já que há poucos bilhões de IPv4 e um atacante com a semente testaria todos.

Com sal diário, essa reversão alcança no máximo o dia corrente. Dentro do dia ainda dá para deduplicar o mesmo visitante, que é o necessário para provar consentimento, e, passadas 24 horas, a correlação se perde por construção.

A distinção tem efeito jurídico: isso é minimização forte e pseudonimização, e não anonimização no sentido do art. 12. Quem diz que "hash é dado anonimizado" está simplificando de um jeito que não sobrevive a uma fiscalização. A diferença está explicada em anonimização.

O que o registro de consentimento guarda, campo a campo

CampoPor que existe
Data e horaProva quando o consentimento foi dado
visitor_hashLiga as ações do mesmo visitante no mesmo dia sem identificá-lo
Categorias (necessários, estatísticas, marketing, personalização)O conteúdo exato da escolha
AçãoDistingue "aceitou tudo" de escolha por categoria e de retirada
Versão da políticaConsentimento vale para a versão apresentada; mudou o texto, o banner volta
User agentEvidência de ambiente em caso de contestação
URL de origemEm qual página do site a escolha foi feita
IdiomaProva em qual idioma o texto foi apresentado

Não há nome, não há e-mail, não há IP e não há identificador publicitário.

Retenção por plano

PlanoRetenção do registro de consentimento
Free90 dias, com expurgo automático
Planos pagosHistórico integral, sem corte

O histórico integral nos planos pagos é decisão de produto, e ela tem um motivo prático: prova de consentimento com prazo curto deixa de ser prova exatamente no momento em que é cobrada. Alguns fornecedores cortam em 12 meses.

O banner não entrega o seu visitante a ninguém

  • Nenhuma requisição a CDN de terceiro. O banner não carrega fonte, ícone nem folha de estilo de fora. Uma única requisição dessas entregaria o IP do visitante a outra empresa antes de qualquer consentimento.
  • Nenhum código de terceiro no script. O script do Concedo é um arquivo único, escrito e montado por nós, sem biblioteca de terceiro embutida. Menos código de terceiro é menos por onde atacar: não há código alheio a auditar, nem peça que alguém de fora possa trocar depois de publicado.
  • Isolamento visual. A interface do banner é montada numa área isolada da página, para não mudar o visual do site do cliente nem ser mudada por ele.
  • Se o Concedo falhar, o site segue. Se a configuração não carregar, o site do cliente continua funcionando e um aviso vai para o console do navegador. O estado negado do Consent Mode continua sendo emitido.
  • Um aviso de funcionamento por dia, sem visitante. O banner diz aos nossos servidores, uma vez por dia e por navegador, só se apareceu ou por que falhou. O aviso leva a chave pública do site e um código de lista fechada, e nada que identifique quem visitou; o servidor apenas soma os avisos por site e por dia.

Este site não rastreia sem consentimento

As páginas públicas do Concedo (landing, guias, glossário, scanner e as páginas legais) usam o nosso próprio banner. Antes da sua escolha, elas não criam cookie opcional e não chamam domínio de terceiro, e as fontes são servidas do nosso próprio domínio. Ferramentas de estatística e de anúncio só carregam depois de você aceitar a categoria delas.

Um teste automatizado registra toda requisição de rede feita pelas páginas antes da escolha e falha se aparecer qualquer domínio que não seja o do próprio site. A lista completa de cookies e ferramentas está na política de cookies.

Segurança da sua conta

MedidaComo está implementado
SenhaHash argon2id. A senha em texto não é armazenada nem registrada em log.
SessãoCookie gravado pelo servidor e invisível para scripts, com SameSite=Lax e, em produção, Secure. No banco fica apenas o SHA-256 do token, e vazamento da tabela não permite assumir a sessão.
Força bruta no loginLimite de tentativas por e-mail e por endereço de origem, em janela de tempo. A chave por origem é o hash do IP: nem em memória o IP fica em claro.
Registro de acessoIP, data e hora de cada login, por seis meses, como exige o Marco Civil. Em sigilo, fora do painel e de todo export; só sai por ordem judicial. Nunca recebe dado de visitante.
Isolamento entre clientesToda consulta é filtrada por organização, com teste automatizado de isolamento que reprova a mudança que vaze dado de um cliente para outro.
Recebimento dos consentimentosTodo envio é conferido contra o formato aceito e recusado fora dele, com limite de frequência por site e por visitante, e a origem do pedido conferida contra o domínio cadastrado do site.
SegredosExclusivamente na configuração do servidor. Nenhuma credencial no código.

Trocar a semente do sal é irreversível para a correlação passada. É por isso que ela é tratada como segredo de rotação documentada, e não como configuração comum.

Nossa exposição a terceiros

Quanto menos fornecedor, menos gente com acesso potencial aos seus dados. O único fornecedor que armazena dado de visitante do seu site é o provedor de infraestrutura e banco de dados; nenhum outro recebe. As categorias de operador estão na política de privacidade, e a lista nominal fica disponível a pedido em privacidade@concedo.com.br.

Como cada mecanismo é verificado

Cada mecanismo descrito nesta página tem teste automatizado que reprova quando o texto e o código divergem, e a revisão de segurança faz parte de toda mudança no serviço. Certificações formais, quando obtidas, são publicadas nesta página; enquanto não constarem aqui, não alegamos nenhuma.

Se algo der errado

Em caso de incidente de segurança com risco relevante aos titulares, comunicamos os afetados e a ANPD, conforme o art. 48 da LGPD, informando o que aconteceu, quais dados foram atingidos, o que já foi feito e o que o titular deve fazer.

Encontrou uma vulnerabilidade? Escreva para seguranca@concedo.com.br. Não movemos ação contra quem reporta de boa-fé, sem exfiltrar dado e sem degradar o serviço.

Documentos relacionados

Continue lendo