:)Omini Flow
Segurança

Omini Sign — Segurança

Práticas e mecanismos de segurança implementados no Omini Sign para proteger documentos, tokens e dados dos signatários.

⚠️ Este documento é institucional e precisa de revisão jurídica antes de entrar em produção. Última atualização: Junho de 2026.

O Omini Sign aplica os mesmos princípios de segurança da plataforma Omini Flow, com controles adicionais específicos para o processo de assinatura eletrônica.

1. Tokens de assinatura

Cada signatário recebe um link de assinatura único baseado em um token criptográfico seguro:

  • O token plain é gerado com randomBytes criptograficamente seguro
  • Apenas o hash SHA-256 do token é armazenado no banco de dados
  • O token plain nunca é registrado em logs ou retornado por APIs
  • Tokens têm prazo de expiração configurável pela empresa
  • Tokens usados não podem ser reutilizados após a assinatura

2. Armazenamento de documentos

Os documentos enviados para assinatura são armazenados em área privada do servidor:

  • Armazenamento fora do diretório web público — sem acesso direto via URL
  • Hash SHA-256 calculado no momento do upload para verificação de integridade
  • fileKey (caminho interno) nunca é retornado em respostas de API
  • Acesso ao PDF somente via endpoint autenticado com token válido
  • Validação de formato: apenas arquivos .pdf são aceitos
  • Verificação de magic bytes para garantir que o arquivo é um PDF real

3. Servindo o PDF ao signatário

O endpoint de servir o PDF implementa múltiplas camadas de proteção:

  • Rate limit: máximo de 20 requisições por 10 minutos por IP
  • Validação do token (via hash SHA-256) antes de qualquer operação
  • Headers seguros: Cache-Control: no-store, X-Content-Type-Options: nosniff
  • Content-Disposition com nome original sanitizado — sem expor o caminho interno
  • Envelope cancelado, expirado ou revogado retorna 410 (gone)
  • Token inválido ou expirado retorna 404 com mensagem genérica

4. Proteção de dados pessoais dos signatários

Os dados pessoais dos signatários são tratados com minimização e proteção:

  • E-mail do signatário mascarado nas respostas de API (ex: j***@empresa.com)
  • Endereço IP mascarado nos logs e trilha de auditoria (ex: 192.168.x.x)
  • Dados de signatário nunca retornados para terceiros sem autorização
  • TokenHash nunca exposto em respostas de API ou logs

5. Isolamento por empresa

Cada empresa opera em ambiente isolado no Omini Sign:

  • Envelopes, documentos e signatários são filtrados por companyId no backend
  • Usuário de empresa A nunca acessa dados da empresa B
  • SUPER_ADMIN pode ver metadados de auditoria, mas não o conteúdo do documento
  • Qualquer acesso administrativo sensível gera AuditLog com actor, IP e timestamp

6. Trilha de auditoria imutável

Todos os eventos do processo de assinatura geram registros de auditoria:

  • Eventos registrados: SENT, VIEWED, SIGNER_SIGNED, SIGNED, DECLINED, CANCELED
  • Cada registro contém: tipo, timestamp, signerId, metadados do evento
  • IP mascarado e user-agent registrados para cada ação do signatário
  • AuditLog separado para rastreabilidade da plataforma
  • Registros não podem ser editados ou excluídos por usuários comuns

7. Rate limiting

O Omini Sign aplica limites de requisição para prevenir abusos:

  • Visualização de token: 30 req / 10 min por IP
  • Envio de assinatura (POST): 10 req / 15 min por IP
  • Acesso ao PDF: 20 req / 10 min por IP
  • Rate limit retorna HTTP 429 com tempo de reset

8. O que o Omini Sign não oferece ainda

  • Certificação por ICP-Brasil ou certificado digital qualificado
  • Verificação de identidade por documento oficial (CPF, RG, biometria)
  • Autenticação por OTP/2FA para o signatário (planejado)
  • Carimbo de tempo certificado por autoridade externa