1.4 KiB
ADR-009 — Gestão segura de documentos
- Estado: Aceite como padrão de contrato e segurança; capacidades incompletas são explicitadas.
- Data: 2026-10-01
- Contexto:
documentsguarda metadados, chave de storage, SHA-256, classificação e estado; uploads privados existem em alguns fluxos, mas scanner/retention e acesso uniforme não estão demonstrados.
Decisão
Separar metadados, blob privado e ligações tipadas. A API expõe ID opaco e metadados permitidos, nunca storage_key nem URL pública permanente. Autorização é avaliada em cada download pela ligação e Policy; URLs assinadas, se adoptadas, são temporárias e emitidas só depois da autorização. Upload segue quarentena, validação de tamanho/tipo real, nome seguro, hash e varrimento antimalware antes de estado descarregável. Versões são imutáveis; substituição cria nova versão, mantendo trilho. Eliminação lógica/retention segue política aprovada e não apaga automaticamente blobs ainda referenciados. Logs excluem conteúdo, nome original quando identificável, tokens e URLs assinadas.
Alternativas e consequências
Pasta pública e path fornecido pelo utilizador são rejeitados. Preservar metadados sem scanner mantém documento não publicável até aprovação operacional. Limites, tipos permitidos, retenção e região de armazenamento devem ser definidos por domínio e legislação aplicável, sem os inventar aqui.