Isolamento entre tenants e tratamento de dados
Como a WASViking mantém as organizações separadas, o que criptografamos, o que guardamos e o que nunca sai do seu ambiente.
A WASViking® é multi-tenant por design. O isolamento é aplicado na camada de views, na camada de ORM, na camada de auditoria e na camada de faturamento.
Escopo da organização
Todo artefato de cliente carrega um organization_id. Toda consulta do
ORM que toca um artefato de cliente filtra pela organização do usuário
que fez a requisição. Isso é aplicado por meio de:
- Mixins de view base que recusam uma requisição sem contexto de organização.
- Querysets do ORM com escopo definido por padrões do tipo
.filter(organization=request.user.organization). - Gravações na trilha de auditoria que registram a organização do operador.
- Registros de faturamento vinculados à organização, não a usuários.
A busca de dados entre tenants é impossível pelas superfícies de API suportadas. Tratamos qualquer tentativa de consulta entre tenants como um bug.
Escopo das chaves de API
As chaves de API (wv_live_*) carregam a organização em que foram
emitidas. O middleware de autenticação define request.organization a
partir da chave. Qualquer tentativa de usar a chave contra um recurso de
outra organização retorna 404 (e não 403), para evitar revelar que o
recurso existe.
Fronteira entre parceiro e cliente
O host de parceiros (partners.wasviking.com) e o host do portal do
cliente ficam na mesma aplicação Django, mas em configurações de URL
separadas e em tabelas de identidade separadas. Operadores de parceiros
(PartnerUser) não são usuários Django; usuários de clientes não são
parceiros.
- Operadores de parceiros não conseguem ver usuários de clientes.
- Usuários de clientes não conseguem ver parceiros.
- O modelo de operação (consulte Modelos de operação) determina se um parceiro vê dados de postura de um cliente gerenciado.
Isolamento do agente Sentinel
- O certificado de cliente do agente é vinculado a uma única organização.
- Chamadas de métodos gRPC entre tenants são recusadas na camada de serviço.
- Jobs de scan interno são despachados apenas para agentes vinculados à mesma organização.
- O servidor gRPC nunca registra em log payloads completos de proto, job ou resposta.
Criptografia
- Em trânsito. TLS 1.2+ em todos os endpoints públicos. mTLS no túnel do Sentinel.
- Em repouso. Criptografia gerenciada pela AWS no RDS (MySQL) e no DocumentDB (MongoDB), quando aplicável. Chave Fernet com escopo de tenant para os campos sensíveis de cada tenant.
- As chaves de API são armazenadas como hash, não em texto claro.
- As credenciais de autenticação dos scans autenticados são criptografadas com a chave com escopo de tenant.
- Secrets detectados (
sentinel secrets) enviam apenas o hash SHA-256 e uma prévia mascarada; o secret bruto nunca chega à WASViking.
O que nunca sai do ambiente do cliente
- Secrets brutos detectados pelo
sentinel secrets. Apenas o hash e a prévia mascarada cruzam a fronteira. - Corpos HTTP de alvos internos nos logs do operador. O serviço gRPC oculta proto, job e resposta.
- Arquivos-fonte do SBOM. Apenas o CycloneDX já processado é enviado.
Retenção
| Dado | Retenção padrão |
|---|---|
| Saída de scans | 12 meses. Configurável por plano. |
| Achados | Indefinida enquanto a organização estiver ativa. |
| Trilha de auditoria | 24 meses. Configurável por plano até 7 anos. |
| Códigos de MFA | 5 minutos. |
| Logs de requisições da API | 30 dias. |
| Eventos de acesso a Posture Share / Bundle | Igual à trilha de auditoria. |
| Envios de SBOM | Indefinida enquanto a organização estiver ativa. |
Quando uma organização encerra a conta, os dados dela são apagados de todos os armazenamentos ativos ao final de uma janela reversível de 60 dias; sobrevivem apenas os registros que a lei exige (registros de faturamento por 7 anos, termos aceitos e evidências de auditoria por 5 anos, e o registro do próprio encerramento). O procedimento, o caminho de cancelamento e as evidências que você recebe estão descritos em Encerramento de conta e eliminação de dados. As linhas da trilha de auditoria que citam partes externas (auditores que acessaram um compartilhamento, por exemplo) são preservadas com as identidades pseudonimizadas e a trilha de acesso de terceiros intacta.
Backups
- Backups automatizados do MySQL e do MongoDB.
- Rotação de 7 dias: recuperação point-in-time para o banco de dados relacional e uma janela móvel de 7 dias para o banco de documentos. O armazenamento de objetos não é versionado.
- A restauração é iniciada por um operador e auditada.
- As cópias de dados apagados expiram com essa rotação e nunca são restauradas em produção.
Suboperadores
A WASViking usa uma lista curta de suboperadores:
- AWS para computação, armazenamento e rede.
- Um provedor de modelos de IA para as superfícies de recomendação por IA (nomeado no registro de suboperadores no Trust Center).
- Stripe para faturamento.
- SendGrid para e-mail transacional.
- Cloudflare para edge, WAF e CDN.
A lista atual está no Trust Center
(wasviking.com/trust-center/). Notificamos os clientes cobertos por DPA
quando a lista de suboperadores muda.
Onde fazer perguntas mais aprofundadas
- DPA: fornecido mediante solicitação pelo Trust Center.
- Questionário de segurança (CAIQ / SIG): fornecido sob NDA.
- Roadmap de SOC 2: publicado no Trust Center.
