MeuInventario · Segurança
Segurança e confiança
A plataforma processa dados sensíveis de PMEs brasileiras (clientes, vendas, fornecedores, financeiro) e tem agentes de IA que operam sobre esses dados. Por isso tratamos segurança como requisito fundacional, não como tópico de marketing.
Arquitetura
- Hospedagem: AWS, região us-east-1, com plano de migração para sa-east-1 (São Paulo) conforme volume justificar
- Runtime: ECS Fargate em sub-redes privadas (sem IP público direto). Tráfego termina em ALB com certificado ACM
- Banco de dados: Aurora Serverless v2 PostgreSQL 17, encryption at-rest via AWS KMS (AES-256), backups automatizados com retenção mínima de 7 dias
- Defesa em camadas: Security Groups restritivos (API só aceita tráfego do ALB), VPC Flow Logs, IAM com princípio de menor privilégio
Criptografia
- Em trânsito: TLS 1.2+ obrigatório em todas as conexões públicas. Certificados emitidos pelo AWS Certificate Manager
- Em repouso: AES-256 via AWS KMS para banco de dados, S3, EBS, snapshots e backups
- Segredos: AWS Secrets Manager com rotação automatizada. Zero credenciais em texto plano em código, variáveis de ambiente em commit ou logs
Autenticação e autorização
- Identidade: federada via WorkOS AuthKit (sealed session cookie, httpOnly + Secure + SameSite=Lax)
- MFA: exigido por padrão para usuários administradores
- JWT: validado a cada requisição via JWKS com cache de 15 minutos. Claims customizados obfuscados via AES-128-ECB + HKDF
- RBAC: roles e permissões por organização, aplicadas em cada endpoint do backend
Isolamento multi-tenant
Cada organização tem seu próprio espaço lógico de dados. Toda query ao banco inclui um filtro explícito WHERE organization_id = ? e existe um mecanismo de defesa em profundidade que dispara erro em runtime caso a query seja executada sem esse filtro. Cobertura é garantida por testes de leakage cross-tenant rodados em CI.
Segurança dos agentes de IA
Agentes de IA processam dados de clientes em loop (tool-use, execução de ações). Isso eleva o perfil de risco e exige controles específicos:
- Prompt injection: verificação primária via Llama Prompt Guard 2 (Groq LPU), com fallback para AWS Bedrock Guardrails (filtro PROMPT_ATTACK)
- Tool-use: queries preparadas obrigatórias para tools que tocam dados do cliente — sem concatenação de SQL em string
- Audit trail: cada chamada de tool gera registro com input/output redacted (campos sensíveis mascarados), id da execução, organização e usuário
- Spend limits: cap diário e mensal por organização. Reservas atômicas no banco evitam estouro mesmo em requisições paralelas
- Modelos: AWS Bedrock primário (sem markup, contrato BAA), com fallback configurável para outros provedores
LGPD
Operamos como operador (dados carregados pelos clientes) e controlador (dados dos administradores que assinam). Detalhes completos sobre bases legais, retenção, sub-operadores e exercício de direitos na nossa Política de Privacidade.
- Soft-delete padrão em registros, com exclusão definitiva via API de direito de eliminação
- Audit logs estruturados com correlation ID por requisição, mantidos por 24 meses
- Exportação de dados em formato JSON estruturado mediante pedido do controlador
Webhooks e entrada externa
- Verificação HMAC SHA-256 em toda entrada de webhook (WorkOS, Stripe)
- Janela de replay de 5 minutos, comparação em tempo constante
- Sem fallback “skip signature” em produção
Observabilidade
- Logs estruturados (JSON) com
requestIdpropagado em toda chamada downstream (banco, IA, email) - CloudWatch para métricas, logs e alertas
- Alertas de erro por tenant, alertas de anomalia de custo de IA
Backups e recuperação
- Aurora automated backups (retenção 7 dias mínima)
- Plano para snapshot cross-region semanal em produção (em execução)
- RPO ≤ 24h, RTO ≤ 4h como meta operacional
CI/CD e dependências
- Dependabot semanal cobrindo npm, GitHub Actions, Terraform, Docker
- Lockfile congelado (
--frozen-lockfile) em todos os builds de CI - Testes de tenant leakage + unit + integration (Testcontainers Postgres) como gate obrigatório
- Deploy para produção exige aprovação manual (GitHub Environments com reviewer obrigatório)
Reportar vulnerabilidade
Se você identificou uma vulnerabilidade, escreva para seguranca@meuinventario.com. Comprometemo-nos a responder em até 72 horas. Para divulgação responsável, oferecemos coordenação dentro de janela razoável antes de qualquer publicação.
Não execute testes intrusivos em ambientes de cliente sem autorização escrita. Para pentests autorizados, alinhe escopo previamente com nossa equipe.