Plataforma · Compliance

Segurança & LGPD

Privacidade e segurança fazem parte do design original do Nodus, não foram adicionados depois. Esta página resume as garantias que você tem como cliente — e que você pode oferecer aos seus colaboradores e candidatos.

Multi-tenant fail-closed

Cada empresa cliente tem um empresa_id próprio. Toda query sensível filtra por esse ID com checagem em 3 camadas:

  1. Roteador valida sessão e empresa antes do controller.
  2. Controller chama Auth::requireEmpresaId() que aborta 403 se vazio.
  3. SQL final tem WHERE empresa_id = ? obrigatório.

Se qualquer uma das camadas falhar, a request retorna erro — nunca dados de outra empresa.

Criptografia em repouso

O que é cifradoAlgoritmoOnde
Senhas dos usuáriosArgon2idusuarios_peopleos.senha_hash
Sessões ativasAES-256-CBCnodus_sessions.data
API keys de integraçõesAES-256-CBCintegracoes_externas.credentials_encrypted
Certificado eSocial A1AES-256-CBCArquivo .pfx + senha
Face descriptors (REP-A)AES-256-CBCface_descriptors.descriptor_encrypted
Tokens de webhookHMAC-SHA256webhooks.secret

A chave mestra (APP_ENCRYPTION_KEY) fica numa env var separada do banco — mesmo um dump do PostgreSQL não revela nada cifrado.

CSRF + XSS

LGPD — direitos do titular

O Nodus implementa nativamente os 9 direitos do titular previstos na Lei 13.709/2018 Art. 18:

DireitoComo exercerQuem
Confirmação de tratamentoPortal → Meus DadosColaborador
Acesso aos dadosPortal → Meus Dados → ExportarColaborador
CorreçãoPortal → editar próprios dadosColaborador
Anonimização / exclusãoRH marca excluido_emRH a pedido do colab
PortabilidadeExportar JSON/CSVColaborador
Revogação de consentimentoPortal → Preferências de NotificaçãoColaborador
Acesso (candidato)Link público + token HMAC por emailCandidato sem conta
Exclusão (candidato)Link público + token HMAC por emailCandidato sem conta
Informação sobre compartilhamentoPolítica de Privacidade públicaQualquer titular

Soft-delete & retenção

Funcionários nunca são removidos fisicamente do banco (eSocial e CLT exigem 5+ anos de retenção). O Nodus usa soft-delete:

Crons de retenção automática:

CronO que fazCadência
biometria_retencao_cronDeleta selfies brutas >90 dias; desativa face descriptors 30d após desligamentoDiário
lgpd_cron_retencao_candidatosAnonimiza candidaturas inativas há 12+ meses (perde CPF/email/telefone)Mensal
lgpd_retencao_cronAplica políticas de retenção configuradas por empresaDiário

K-anonymity

Agregações estatísticas (clima, 360°, mercado salarial) só são exibidas quando há um mínimo de respostas — abaixo disso, os dados são suprimidos pra evitar identificação de um indivíduo específico.

MóduloK mínimoPor quê
Avaliação 360°≥2Esconde quem deu nota baixa pro avaliado
Pesquisa de clima / NR-1≥5Anonimato exigido em pesquisa psicossocial
Mercado salarial≥3Não revela salário individual num cargo raro

Audit log

Toda ação destrutiva ou sensível é registrada em audit_log com:

O admin acessa em ⚙️ Sistema → Auditoria — filtros por usuário, ação, intervalo de tempo. Export CSV registra quem exportou (audit recursivo).

Incidentes & vazamentos

Procedimento se identificar comportamento suspeito (login indevido, dados expostos):

  1. Vá em ⚙️ Sistema → Auditoria e identifique a janela do incidente.
  2. Revogue acessos suspeitos imediatamente — Usuários → desativar.
  3. Force troca de senha em massa se necessário.
  4. Abra um chamado urgente em Suporte com tag SECURITY.
  5. Notifique ANPD em até 72h via gov.br/anpd se houver vazamento confirmado (LGPD Art. 48).
📜 DPO Nodus

O Encarregado de Dados (DPO) da Splindid Systems (empresa do Nodus) atende em /privacidade.html. Use esse canal pra reclamações formais, requisições da ANPD ou ofícios judiciais.