Compliance

Conformidade construída na arquitetura, não adicionada depois.

LGPD-by-design. Trilhas de auditoria imutáveis. SNGPC em desenvolvimento. Aderência arquitetural à RDC 1.014/2026. Documentação completa e código aberto para inspeção.

Aviso institucional — leia antes de avaliar

O canna-br é software. Conformidade legal (LGPD, RDC 1.014/2026, Portaria 344/98) é responsabilidade integral da associação adotante e seus advogados, DPO e Responsável Técnico farmacêutico. Nenhum mecanismo técnico substitui parecer jurídico próprio, designação formal de RT ou DPO conforme exigido em lei.

Esta página documenta o que existe hoje e o que ainda falta — sem omitir lacunas. Associações que precisam de auditoria de segurança independente, DPO terceirizado ou SNGPC homologado encontrarão abaixo o estado atual de cada requisito.

LGPD-by-design

Proteção de dados de saúde como propriedade técnica, não declaração.

Dados sensíveis de membros — condição médica, prescrições, prontuário — são protegidos por controles técnicos que não dependem de configuração correta ou disciplina operacional. Documentação: build/compliance →

Envelope encryption por membro

Cada membro tem sua própria chave de criptografia (DEK aleatória de 256 bits), cifrada por uma KEK de tenant. Os campos name, dob, address, medical_condition, prescription_text e demais dados sensíveis só são decifráveis com a DEK individual.

O CPF nunca é armazenado em claro — apenas como SHA-256(cpf + site_salt), com salt diferente por tenant. O mesmo CPF não é correlacionável entre associações distintas.

Ver arquitetura de criptografia →

Crypto-deletion (Art. 18 IV LGPD)

Ao receber pedido de eliminação, a DEK individual do membro é destruída irreversivelmente. Sem a DEK, todos os campos cifrados tornam-se computacionalmente irrecuperáveis — mesmo que o armazenamento físico persista para preservar a integridade da trilha de auditoria.

O registro permanece com status = crypto_deleted. A eliminação é concluída em até 7 dias úteis após o pedido ao DPO.

Ver política de eliminação →

Minimização e RBAC

Cada papel acessa apenas os dados necessários à sua função. Um dispensador consulta cota e histórico — não prontuário médico completo. O auditor vê trilhas de eventos — não dados pessoais decifrados. O DPO tem acesso aos registros de consentimento — não ao conteúdo das prescrições.

TOTP obrigatório para operações de alto risco (anonimização, aprovação de laudo, gestão de papéis).

Ver tabela de permissões →

Estado atual dos requisitos LGPD

Requisito Status Observação
Envelope encryption AES-256-GCM Implementado Por membro, DEK aleatória
Crypto-deletion Art. 18 IV Implementado Destruição irreversível da DEK
RBAC com segregação de funções Implementado 5 roles; TOTP nível 4
DPO designado Interino Gabriel Fonseca, acumulado — ver trust/dpo
DPA (Data Processing Agreement) Previsto v0.3 Template para associações adotantes
RIPD (Art. 38 LGPD) Previsto v0.4 Obrigatório antes de dados em produção real
Auditoria de segurança independente Previsto v1.0 Código público (AGPL-3.0) mas sem terceiro contratado

Trilhas de auditoria

O que aconteceu não pode ser apagado. Nem pela aplicação.

O audit log do canna-br é protegido por regras no próprio PostgreSQL — fora do alcance da camada de aplicação. Mesmo uma vulnerabilidade no código não pode alterar ou deletar o histórico.

Imutabilidade técnica

A tabela event_log tem uma RULE do PostgreSQL que descarta silenciosamente qualquer instrução UPDATE ou DELETE. A proteção existe no banco — independente do código da aplicação.

-- PostgreSQL RULE na tabela event_log

CREATE RULE no_update_event_log

AS ON UPDATE TO event_log

DO INSTEAD NOTHING;

 

CREATE RULE no_delete_event_log

AS ON DELETE TO event_log

DO INSTEAD NOTHING;

Segunda camada: pgAudit registra eventos DDL diretamente nos logs do PostgreSQL — fora do alcance da aplicação e auditável por terceiros independentemente.

O que a trilha cobre

Membro

MemberRegistered · MemberAnonymized

Cadastro com consentimento + anonimização LGPD

Dispensação

DispensationRecorded · QuotaConsumed · LotDeducted

Registro atômico — três eventos ligados

Inventário

LotCreated · LotQuarantined · LotRecalled

Ciclo completo do lote com cadeia de custódia

Compliance

SngpcSubmitted · BspoGenerated · RipdApproved

Artefatos regulatórios com hash imutável

Acesso

RoleAssigned · UserAuthenticated · TotpVerified

Quem fez o quê, quando e com qual papel

Ver documentação completa de eventos →

RDC 1.014/2026

O primeiro regime administrativo formal para associações de cannabis no Brasil.

A vigência começa em 4 de agosto de 2026. Associações que entrarem no sandbox ANVISA passam a operar sob autorização administrativa, não apenas judicial. A fiscalização direta da ANVISA exige rastreabilidade técnica documentável. Referência: Marco Legal Brasil →

2023

STJ Tema 16 IAC

Salvo-conduto coletivo via Habeas Corpus para associações. Regime judicial — sem fiscalização ANVISA direta.

2026 — publicação

RDC 1.014/2026 publicada

Sandbox regulatório ANVISA. Primeiro regime administrativo formal. Requisitos técnicos definidos: SNGPC, RBAC, rastreabilidade, RIPD.

4 agosto 2026 — vigência

Fiscalização ANVISA ativa

Associações aprovadas no sandbox operam sob autorização administrativa. Audit trail imutável, SNGPC integrado e RBAC com segregação de funções tornam-se exigíveis.

Exigências técnicas RDC 1.014 × estado canna-br

Implementado

Audit trail imutável

PostgreSQL RULE + pgAudit. Toda dispensação, transferência de lote e evento de membro registrado e protegido contra alteração.

Ver detalhes →
Implementado

RBAC com segregação

5 papéis distintos (Membro, Dispensador, RT, Auditor, Admin). TOTP obrigatório para operações de alto risco. Log de quem fez o quê.

Ver modelo de domínio →
Implementado

Rastreabilidade seed-to-disp.

Cadeia de custódia completa: planta matriz → clone → cultivo → colheita → laudo COA → estoque → dispensação. Cada elo registrado com identificador permanente (ULID).

Ver trilha →
Em desenvolvimento

SNGPC integrado

Arquitetura de envio implementada. XML por dispensação e batch diário configurados. Homologação aguarda schema XSD específico para associações de pacientes — não publicado pela ANVISA até junho de 2026.

Ver estado SNGPC →
Interino

LGPD — dados sensíveis

Envelope encryption + crypto-deletion implementados. DPO: Gabriel Fonseca interino (acumulado com papéis técnicos). DPA e RIPD formais previstos em v0.3/v0.4 — exigidos antes de dados de membros em produção real.

Ver designação DPO →
Roadmap

BSPO — Relatório trimestral

Geração automática de BSPO (Balanço de Substâncias Psicoativas e Outras) trimestral e anual, assinado pelo RT, com PDF armazenado e hash registrado em evento. Previsto para v0.4.

Ver especificação →

SNGPC

Mock implementado. Homologação real aguarda publicação do XSD pela ANVISA.

O Sistema Nacional de Gerenciamento de Produtos Controlados (SNGPC) exige que cada dispensação de substância controlada seja comunicada à RNDS/ANVISA em até 24 horas.

O canna-br tem a arquitetura de envio completamente implementada: geração do XML individual por dispensação, batch diário às 23h45, retry automático três vezes com fila de mensagens mortas e alerta ao RT em caso de falha persistente.

O que aguarda é o schema XSD específico para associações de pacientes — as associações tem natureza jurídica e regime operacional distintos das farmácias e clínicas para as quais o SNGPC foi originalmente desenhado. A ANVISA ainda não publicou o XSD adaptado até junho de 2026.

Implementado Geração XML individual por dispensação
Implementado Batch diário consolidado às 23h45
Implementado Retry 3× + fila de mensagens mortas
Implementado Alerta ao RT em falha persistente
Aguardando Schema XSD ANVISA para associações
Previsto v0.5 Homologação RNDS em ambiente real
Pesquisa completa sobre SNGPC →

Fluxo SNGPC — arquitetura atual

1

DispensationRecorded

Evento imutável appendado no event log

2

Worker SNGPC (BullMQ)

Consome evento → gera XML individual

3

Batch diário 23h45

Consolida XMLs → envia à RNDS

4

Resposta armazenada

Sucesso ou falha registrado em sngpc_submissions

Falha de envio não invalida a dispensação. O fluxo SNGPC é assíncrono e desacoplado do estado operacional crítico.

Relatórios regulatórios

Artefatos regulatórios como saída automática do sistema, não trabalho manual.

Cada dispensação, transferência e evento regulatório gera automaticamente os artefatos necessários — sem reprocessamento manual quando o fiscal chegar.

Relatório Periodicidade Destinatário Status
SNGPC XML
Dispensações controladas
Por dispensação + batch diário ANVISA (RNDS) Mock — v0.5 real
BSPO Trimestral
Balanço de Substâncias
15 jan · 15 abr · 15 jul · 15 out ANVISA Previsto v0.4
BSPO Anual 31 janeiro ANVISA Previsto v0.4
KPI Dashboard
7 indicadores ANVISA
Mensal Diretoria Implementado
Rastreabilidade Full
Seed-to-dispensação
Sob demanda Auditoria / Fiscalização Implementado
DRE + Balanço
CPC 29
Mensal (até dia 10) Tesouraria / Contador Previsto v0.5
Ver especificação completa →

Documentação jurídica

O que está publicado. O que ainda falta.

Esta lista é deliberadamente explícita. Uma associação que adotar o canna-br precisa saber com o que pode e com o que não pode contar hoje.

Publicado

Política de Privacidade

Tratamento de dados do processo de candidatura ao piloto. Bases legais LGPD, transferência internacional, direitos dos titulares, prazo de retenção e canal exclusivo LGPD.

Ler política →
Publicado

Termos de Uso

Condições de uso do serviço durante o período piloto. Responsabilidades, limitações e contato para disputas.

Ler termos →
Interino

DPO — Encarregado

Designação Art. 37 LGPD: Gabriel Fonseca como DPO interino durante o período piloto. Documento honesto sobre as limitações da designação acumulada e roadmap para DPO independente.

Ver designação →
Previsto v0.3

DPA — Data Processing Agreement

Template de contrato de processamento de dados entre o canna-br (operador) e cada associação adotante (controladora). Necessário antes de dados de membros em produção real.

Não disponível ainda
Previsto v0.4

RIPD — Relatório de Impacto

Relatório de Impacto à Proteção de Dados (Art. 38 LGPD) para dados de saúde de membros de associações. Obrigatório antes de processar dados sensíveis em produção.

Não disponível ainda
Previsto v1.0

Auditoria de segurança independente

O código é público (AGPL-3.0) e auditável por qualquer parte, mas nenhum terceiro independente foi formalmente contratado até esta data. Previsto como gate de v1.0.

Não disponível ainda

Para o índice completo de documentos, lacunas declaradas e roadmap de compliance:

Ver /trust/ — Confiança & LGPD →

Associações que queiram construir esse padrão desde o início.

Estamos selecionando pilotos com associações dispostas a validar a conformidade técnica em operação real antes da vigência de agosto. Vagas limitadas.