Skip to content

LGPD

O Neemias foi projetado com proteção de dados desde a arquitetura. Abaixo, o alinhamento com os princípios da LGPD.

Classificação de Dados Pessoais

CampoTipo de dadoClassificação LGPDFinalidadeRetenção
displayNameNome completoDado pessoalIdentificação do alunoEnquanto o aluno estiver ativo
photoRefFotoDado pessoal sensível (biométrico)Identificação visualEnquanto o aluno estiver ativo
guardianName / guardianNameAltNome do responsávelDado pessoalContato de emergênciaEnquanto o aluno estiver ativo
birthDateData de nascimentoDado pessoalCálculo de idade para alocação em turmaEnquanto o aluno estiver ativo
phones[].numberTelefoneDado pessoalContato de emergênciaEnquanto o aluno estiver ativo
address.* (7 campos)Endereço residencialDado pessoalCadastro e emergênciaEnquanto o aluno estiver ativo
allergiesAlergiasDado pessoal sensível (saúde)Segurança da criançaEnquanto o aluno estiver ativo
specialNeedsNecessidades especiaisDado pessoal sensível (saúde)Acomodação pastoralEnquanto o aluno estiver ativo
imageConsentConsentimento LGPDDado pessoal sensívelAutorização de uso de imagemPermanente (auditoria)

Campos não-PII: studentId, classId, status, nucleus*, familyMembershipStatus, timestamps.

Autorização de Uso de Imagem e Voz

Desde junho/2026, o app oferece suporte nativo ao Termo de Autorização de Uso de Imagem, Voz e Dados de Menor, em conformidade com:

  • LGPD (Lei 13.709/2018): base legal de consentimento do responsável (Art. 7º, I c/c Art. 14, §1º)
  • ECA Digital (Lei 15.211/2025): compromissos de proteção em plataformas digitais

Fluxo de cadastro

  1. Admin/Cadastro abre o formulário de adição de aluno
  2. Seção "Autorização de Uso de Imagem (LGPD)" exibe:
    • Checkbox de autorização
    • Campos de CPF e RG do responsável
    • Nome e CPF de duas testemunhas
    • Upload do termo assinado (PDF ou foto)
  3. Ao salvar, um registro imageConsent é criado na tabela imageConsents no IndexedDB com status ACTIVE
  4. O ID do consentimento é vinculado ao registro do aluno (student.imageConsentId)

Revogação

O responsável pode revogar a autorização a qualquer momento via pedido escrito ao contato LGPD indicado na política da instituição. A revogação não prejudica tratamentos já realizados regularmente (Art. 8º, §5º, LGPD).

Renovação

O termo é válido enquanto o menor participar das atividades. Um novo consentimento pode ser registrado a qualquer momento (cria novo registro na tabela, versão anterior arquivada).

Medidas de Proteção

Minimização de Dados

Apenas campos essenciais são armazenados. O sistema não coleta dados desnecessários ou excessivos. Soft-delete preserva o histórico de auditoria sem expor dados ativos.

Criptografia em Repouso

Dados sensíveis no IndexedDB são criptografados com AES-GCM. A chave de criptografia é derivada do hash da senha do usuário via PBKDF2. Campos como changePayload e justification são armazenados apenas como ciphertext.

Controle de Acesso

  • RBAC com 4 papéis base + papéis customizados
  • Apenas ADMIN acessa todos os dados de alunos
  • CHAMADOR vê apenas nome e status para marcação de presença
  • Auditoria: toda mutação registrada via tabela de eventos

Responsabilidades (Controlador vs Operador)

PapelQuem éResponsabilidades LGPD
ControladorIgreja / Escola (instituição usuária do software)Definir finalidades, obter consentimento, responder a requisições de titulares, notificar ANPD em caso de incidente
OperadorMantenedores do software NeemiasGarantir a segurança técnica do software, processar dados conforme instruções do controlador, manter registro de operações

A instituição usuária (igreja/escola) é a controladora dos dados nos termos do Art. 5º, VI da LGPD. O software é a ferramenta — a responsabilidade pelo cumprimento da LGPD é da instituição que opera o sistema.

Fluxo de Resposta a Incidentes

EtapaDescriçãoPrazo
1. DetecçãoIdentificação de vazamento, acesso não autorizado ou perda de dadosImediato
2. ContençãoIsolamento do sistema afetado, revogação de tokens/senhas comprometidos24h
3. InvestigaçãoAnálise de logs (local: IndexedDB, servidor: Cloudflare D1) para determinar escopo48h
4. Notificação ANPDComunicação à Autoridade Nacional de Proteção de Dados72h (Art. 48, LGPD)
5. Notificação titularesComunicação aos responsáveis dos alunos afetados72h
6. RemediaçãoCorreção da vulnerabilidade, melhoria de controles7 dias

Contato para reportar incidentes: conforme SECURITY_CONTACT_EMAIL configurado na instância.

Workflow de Requisição de Titular (Art. 18 LGPD)

DireitoComo exercerFuncionalidade no app
AcessoResponsável solicita à instituiçãoExportar dados do aluno (CSV/JSON) + registro de consentimento
CorreçãoResponsável solicita correção de dado incorretoEdição de campos na interface de admin
ExclusãoResponsável solicita remoção (direito ao esquecimento)Soft-delete do aluno + revogação de consentimento
PortabilidadeResponsável solicita exportação dos dadosExport CSV/JSON de todos os dados do aluno
OposiçãoResponsável contesta tratamento de dado específicoRevogação de consentimento de imagem
Revogação de consentimentoResponsável cancela autorização anteriorRevogação do registro imageConsent

A instituição deve responder à requisição em até 15 dias (Art. 19, LGPD).

Equivalência LGPD → GDPR

LGPDGDPRDiferenças
Art. 5º — Dado pessoalArt. 4(1) — Personal dataEquivalentes
Art. 7º — Bases legaisArt. 6 — Lawfulness of processingEquivalentes (LGPD tem uma base a mais: proteção ao crédito)
Art. 11 — Dados sensíveisArt. 9 — Special categoriesEquivalentes
Art. 18 — Direitos do titularArt. 15-22 — Data subject rightsMuito similares; LGPD inclui direito de oposição explícito
Art. 41 — Encarregado (DPO)Art. 37 — Data Protection OfficerEquivalentes
Art. 48 — Notificação de incidentesArt. 33 — Breach notificationPrazos: 72h (LGPD e GDPR)
Art. 27 — RepresentativeGDPR exige representante na UE se controlador estiver fora

Checklist de Due Diligence para Implantação

  • [ ] Política de privacidade publicada e acessível aos pais/responsáveis
  • [ ] Termo de autorização de uso de imagem preenchido e assinado
  • [ ] Contato LGPD designado e divulgado
  • [ ] Procedimento de resposta a incidentes documentado
  • [ ] Registro de consentimentos armazenado (tabela imageConsents)
  • [ ] Auditoria de acesso: quem vê dados de alunos?
  • [ ] Revogação testada: pais conseguem solicitar exclusão?

Infraestrutura

  • Tráfego: HTTPS obrigatório (Cloudflare)
  • Armazenamento: IndexedDB (client-side) + D1 (Cloudflare, servidores nos EUA)
  • Backups: D1 backups automáticos diários
  • Logs: Sem rastreamento de terceiros. Sem cookies de tracking.
  • Fornecedores terceiros: Nenhum dado de aluno é compartilhado com terceiros para fins comerciais

Fonte: packages/schemas/src/entities.ts (PII comments), .specs/project/STATE.md, app/src/db/types.ts (ImageConsent), docs/operations/storage-retention.md

Distribuído sob licença MIT.