Serviço de Expurgo
O Serviço de Expurgo garante que dados biométricos armazenados localmente sejam removidos assim que a coleta é confirmada no backend e no CNH Sync. Ele é essencial para cumprir a Portaria 968/2022 e a LGPD.
Objetivos
- Manter apenas o mínimo necessário de dados em disco, liberando espaço para novas coletas.
- Aplicar políticas de retenção por status (pendente, aguardando validação, concluído, erro).
- Registrar auditorias indicando quem expurgou, quando, e qual justificativa.
- Reforçar a segurança ao impedir que pacotes antigos sejam exportados manualmente.
Funcionamento
- Inventário: a cada
ExpurgoInterval(padrão 15 minutos) varre a pastaC:\ProgramData\RCollector\payloadse o banco SQLite. - Consulta de status: chama
GET /coletas/{id}/statusna R-Collector API para confirmar se o lote está aprovado e sincronizado. - Confirmação cruzada: verifica se há recibo do CNH Sync associado; caso contrário, posterga para o próximo ciclo.
- Exclusão segura: remove o arquivo com sobrescrita segura (3 passagens) e limpa registros no SQLite.
- Log/Auditoria: envia evento ao Serviço de Logs e cria registro de expurgo na API (
POST /expurgo/auditar).
Matriz de Retenção
| Status | Tempo máximo local | Ação |
|---|---|---|
| Pendente de upload | ilimitado (até upload) | Não expurgar. |
| Upload concluído / aguardando validação | 48h | Reavaliar a cada ciclo; se travado, abrir alerta. |
| Validado, aguardando CNH Sync | 72h | Manter até confirmação externa. |
| Sincronizado | 0h | Expurgar no próximo ciclo. |
| Erro permanente / cancelado | 24h | Expurgar mantendo apenas hash e justificativa. |
Configurações Avançadas
{
"ExpurgoIntervalSeconds": 900,
"OverwritePasses": 3,
"MinFreeSpaceGb": 10,
"PendingAlertHours": 24,
"QuarantineFolder": "C:/ProgramData/RCollector/quarantine"
}
- QuarantineFolder guarda arquivos que não puderam ser deletados por bloqueio do sistema até o suporte resolver o problema.
- Se o espaço livre cair abaixo de
MinFreeSpaceGb, o serviço gera alerta crítico no desktop e no painel web.
Indicadores Monitorados
ExpurgoDeletedCount: número de arquivos excluídos no ciclo.ExpurgoPendingCount: quantidade de pacotes aguardando condição.ExpurgoFreeSpaceGb: espaço restante em disco.ExpurgoErrors: falhas ao remover arquivos (permissão, arquivo em uso, corrupção).
Boas Práticas
- Não desligar o serviço manualmente; ele é configurado como
Automatic (Delayed Start)para evitar impacto no boot. - Verificar periodicamente se softwares de backup estão copiando a pasta do RCollector (não recomendado, pois leva dados sensíveis).
- Em auditorias, exportar o relatório de expurgos diretamente da API em vez de pegar arquivos locais.
Com o Serviço de Expurgo ativo e monitorado, o ambiente local permanece limpo e alinhado às exigências legais do programa de CNH no Pará.