Separação entre associações
As associações compartilham o mesmo banco, e cada registro de associação é marcado com a associação a que pertence. A separação tem duas camadas: regras de acesso no banco e filtros na aplicação.
Regra de acesso por linha
As tabelas com dados de associação têm política de acesso por linha no banco. Além dela, testes automáticos reprovam leitura nova feita pelo navegador que não filtre pela associação em uso nem por um registro específico, e consulta nova das rotas da equipe e dos serviços do servidor que busque um registro pelo identificador sem o filtro pela associação.
Isolamento conferido a cada mudança
Testes automáticos verificam a separação entre associações a cada alteração publicada, incluindo um conjunto que roda contra as políticas reais do banco.
Acesso da equipe
Quem entra, com qual permissão e por quanto tempo.
Perfis por papel
15 perfis de equipe com permissões distintas. As rotas do servidor usadas pela equipe conferem o perfil de quem chama, e as regras mais críticas, como a liberação de lote e a escrita de cultivo, também estão no banco.
Autenticação em dois fatores
Segundo fator por aplicativo autenticador, com códigos de reserva. Pode ser exigido de toda a equipe, a pedido da associação; quando exigido, o código é pedido de novo a cada 12 horas.
Ativado por associação
Desligamento bloqueia o acesso
Quando alguém sai da equipe, o acesso de equipe dessa pessoa é bloqueado.
Limite de tentativas
O login tem limite de tentativas por conta e por endereço de rede. Recuperação de senha e formulários públicos têm limite por endereço de rede.
Registro do que foi feito
O histórico nasce da operação, e a trilha de auditoria não aceita alteração nem exclusão.
Trilha de auditoria sem edição
Ações sensíveis da equipe ficam registradas com pessoa e data, e na maior parte dos registros também com o perfil. O endereço de origem entra em parte deles. O banco recusa alteração e exclusão desses registros, para qualquer perfil.
Aceite de termos com versão
Cada aceite guarda a versão do documento, a data e a origem do acesso.
Autorizações e consumo sem edição
O conteúdo de cada autorização de produtos não aceita edição: a mudança gera nova versão e a revogação exige motivo. O consumo de cada autorização fica em registro que não aceita edição.
Dados pessoais e arquivos
Dado de saúde é dado sensível. O tratamento parte daí.
CPF cifrado
O CPF é armazenado cifrado. A leitura passa por uma função do servidor que exige a associação correspondente, e a revelação do CPF na tela fica registrada.
Chaves de integração cifradas
As chaves que cada associação cadastra para pagamento e assinatura eletrônica são guardadas cifradas com AES-256-GCM.
Documentos em armazenamento privado
Receitas, laudos médicos e documentos pessoais ficam em armazenamento privado e abrem por link temporário. O servidor confere o tipo real do arquivo antes de aceitar o envio.
Laudo de lote é público por desenho
O laudo de análise (CoA) de um lote abre pela página pública do lote, sem login. Ele não contém dado de pessoa associada.
Tráfego cifrado
Todo o tráfego usa HTTPS, com HSTS e política de segurança de conteúdo (CSP) com identificador único por requisição.
Direitos de quem é titular dos dados
A associação é a controladora dos dados; a Tivus opera a plataforma conforme as instruções dela.
Pedido de exclusão registrado
O pedido de exclusão feito pela área da pessoa associada fica registrado e aparece na caixa da pessoa encarregada pelo tratamento de dados.
Cada pessoa baixa os próprios dados
Na área da pessoa associada há exportação dos próprios dados, sem depender de pedido à equipe.
Como a plataforma muda
Toda alteração publicada dispara as mesmas verificações automáticas.
Testes e cobertura mínima
Cada mudança passa por testes automáticos com cobertura mínima exigida, varredura de segredos e verificação de vulnerabilidades em dependências.
Banco alterado por migração versionada
Alterações de banco são escritas como migração e validadas do zero em ambiente de teste antes de ir para produção. A exceção é a aplicação de emergência, acionada manualmente.
Verificação depois de publicar
Depois de cada publicação em produção roda uma verificação automática de saúde da plataforma. Os erros em produção são enviados a uma ferramenta de registro de erros.
O que a associação leva consigo
Os dados são da associação. Estas saídas estão disponíveis para a equipe, sem pedido à Tivus.
- Lista de pessoas associadas, em CSV
- Dados da própria pessoa associada, em planilha, pela área dela
- Relatório consolidado de safras, lotes, laudos e balanço de massa, em PDF ou planilha
- Relatórios financeiros, em PDF ou planilha
- Casos de farmacovigilância, em CSV
- Arquivo fiscal por pedido
Encontrou uma falha de segurança?
Escreva para contato@sativus.app com a descrição e os passos para reproduzir. Nosso prazo-alvo é confirmar o recebimento em até 2 dias úteis e avaliar a gravidade em até 5 dias úteis.
Pedimos que a pesquisa use apenas contas de teste próprias e que os dados de outras pessoas não sejam acessados.
Documentos
Veja as regras de operação em um lote de exemplo
A demonstração pública mostra a trilha do plantio à entrega e o que a plataforma recusa ou faz por conta própria em cada etapa.