Operações diárias
Tarefas que operadores de MSSP executam contra uma instalação SocTalk ativa. Se ainda não fez isso, leia primeiro o Tour pela UI do MSSP, ele cataloga todas as páginas referenciadas abaixo.
Fila de investigações
Abra Investigações para ver os casos ativos de todos os tenants em uma única visão. Filtros: tenant, severidade. Clique em uma linha para ver a linha do tempo do caso, a conversa e as propostas.

Fila de revisão de propostas
Revisões é a fila cross-tenant de propostas de AI aguardando um humano. Aprovar / rejeitar / pedir mais informações atualiza a linha de revisão no banco de dados (e no log de auditoria). Não há outbox na V1, o pipeline de executor / notificação downstream está no roadmap.

Tenant travado em provisioning
Sintoma: a linha do tenant de um novo cliente permanece no estado provisioning por mais de 15 min.
- Verifique o status do release Helm:bash
helm status tenant-<slug> -n tenant-<slug> - Verifique os eventos dos pods:bash
kubectl -n tenant-<slug> get events --sort-by=.lastTimestamp | tail -30 - Causas comuns:
StorageClassausente ou provisioner fora do ar → PVCs travados emPending. Provisione o armazenamento;kubectl describe pvcmostra o motivo.- ResourceQuota pequena demais para a requisição do indexer do Wazuh. Aumente a ResourceQuota do tenant via
helm upgradecom novos valores. - Falhas de pull de imagem → verifique a autenticação do registry e o firewall.
Se uma tentativa de provisionamento não puder se recuperar, descomissione e tente novamente:
# Pela UI do MSSP: detalhe do tenant → Decommission → force=true
# Ou via API:
curl -X POST https://mssp.../api/mssp/tenants/<id>:decommission?force=trueTenant em estado degraded
degraded é definido pelo controlador de provisionamento em uma falha de provisionamento, ou definido explicitamente via API. Não há loop de auto-degradação baseado na idade do heartbeat do adaptador neste release; a métrica soctalk_tenant_adapter_heartbeat_age_seconds serve para o seu alerting.
- Verifique o pod do adaptador:bash
kubectl -n tenant-<slug> logs deploy/soctalk-adapter --tail=200 - Verifique o egress da NetworkPolicy (o adaptador precisa alcançar a API do
soctalk-system):bashhubble observe --from-pod tenant-<slug>/soctalk-adapter-<pod> - Reinicie o adaptador:bash
kubectl -n tenant-<slug> rollout restart deploy/soctalk-adapter
Se o data plane estiver saudável mas o adaptador ainda não conseguir alcançar o soctalk-system, inspecione a NetworkPolicy adapter-egress.
Rotacionar a chave de LLM por tenant
- Admin do MSSP → detalhe do cliente → Settings → LLM → cole a nova chave → Save (ou
PATCH /api/mssp/tenants/{id}/llm). - O armazenamento autoritativo do SocTalk é
IntegrationConfig.llm_api_key_plainno Postgres. O controlador de provisionamento materializa esse valor emSecret/tenant-llm-keyno namespace do tenant (montado pelo Deployment do runs-worker) e opcionalmente espelha uma referência emsoctalk-system/<tenant-id>-llmpara auditoria. - O SocTalk reinicia, em regime de melhor esforço, o Deployment
soctalk-runs-workeremtenant-<slug>para que a nova chave entre em vigor na próxima captação de investigação.
Rotacionar segredos de bootstrap do data plane
Não há comando soctalk-cli rotate-* neste release, esse caminho foi documentado em rascunhos anteriores. Hoje:
- Senha de admin do Wazuh: faça o patch do Secret correspondente no namespace do tenant e depois reinicie o pod afetado. A reexecução do bootstrap do chart na inicialização do pod captará a nova credencial. TheHive e Cortex são integrações externas, não subcharts agrupados, então suas credenciais são rotacionadas nesses sistemas e atualizadas via a configuração de integração (veja /pt-br/integrate/thehive, /pt-br/integrate/cortex).
- Segredo compartilhado do
authddo Wazuh: faça o patch deSecret/wazuh-authd-secretemtenant-<slug>e reinicie o manager do Wazuh. Todos os agentes existentes precisam se reinscrever com o novo segredo; distribua-o pelo seu canal seguro habitual.
Um CLI wrapper para essas rotações está no roadmap.
Analytics
Analytics consolida o volume de triagem, os resultados de propostas, o MTTR e o consumo de orçamento por tenant. Use-o para planejamento de capacidade, avaliação de modelos e revisão de SLA.

Revisão do log de auditoria
O log de auditoria de todo o MSSP fica em UI → aba Audit. Filtre por tenant, ator, ação ou timestamp. Para exportações de compliance, use a API:
curl 'https://mssp.../api/audit?since=2026-01-01&tenant=<id>' > audit.json
Restauração do banco de dados (disaster recovery)
Os backups são gerenciados externamente pelo MSSP (Velero, snapshots de cluster, pg_dump externo). Para restaurar:
- Pare a API do SocTalk:bash(O chart V1 embute o orquestrador no pod da API, não há Deployment
kubectl -n soctalk-system scale deploy soctalk-system-api --replicas=0soctalk-system-orchestratorseparado.) - Restaure os dados do Postgres a partir do seu backup.
- Reinicie a API:
kubectl -n soctalk-system scale deploy soctalk-system-api --replicas=2(ou a sua contagem de réplicas habitual).
Os PVCs do data plane do tenant seguem o mesmo padrão: restaure por namespace e depois faça helm upgrade do release do tenant para reanexar.
Emergência: desabilitar um tenant imediatamente
A ação Suspend da UI neste release muda o estado do tenant para suspended e impede que o orquestrador agende novas investigações, mas não escala as cargas de trabalho. Para um corte efetivo, execute os passos abaixo (escale todos os deployments para zero + aplique uma NetworkPolicy deny-all como redundância):
# 1. Escale todas as cargas de trabalho no namespace do tenant para zero. Esta é
# a parada definitiva — os pods desaparecem.
kubectl -n tenant-<slug> get deploy,statefulset -o name \
| xargs -I {} kubectl -n tenant-<slug> scale {} --replicas=0
# 2. deny-all de redundância para que qualquer coisa que volte a subir (por ex.,
# a partir de um operador travado reconciliando) fique isolada.
kubectl -n tenant-<slug> apply -f - <<EOF
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata: { name: emergency-deny-all }
spec:
podSelector: {}
policyTypes: [Ingress, Egress]
EOFReverta excluindo a NetworkPolicy, escalando as cargas de trabalho de volta às suas contagens de réplicas originais e chamando Resume na UI. Resume também apenas atualiza o estado no banco neste release, ele não restaurará as contagens de réplicas para você.
Suspeita de vazamento de dados cross-tenant
Se você suspeitar de acesso cross-tenant:
- Verifique as execuções recentes da suíte de testes de RLS; elas passam no CI a cada release.
- Sonde o banco diretamente:bash
kubectl -n soctalk-system exec -it statefulset/soctalk-system-postgres -- \ psql -U soctalk_app -d soctalk \ -c "SET app.current_tenant_id='<tenant-a>'; SELECT tenant_id FROM events LIMIT 5;" - Se um vazamento for confirmado, abra um incidente P1. RLS mais
FORCE ROW LEVEL SECURITYé a última linha de defesa; um vazamento não corrigido indica um bug de aplicação ou uma má configuração de role do Postgres.
Erros comuns
- Executar migrations como
soctalk_app. As migrations precisam das credenciaissoctalk_admin; sobsoctalk_appelas falham. - Editar os valores de
soctalk-tenantdiretamente no Helm. Isso ignora o estado do banco de dados do SocTalk; passe pela API. - Criar namespaces
tenant-*manualmente. As labels obrigatórias não estarão presentes e o SocTalk não reconhecerá o namespace. Use o fluxo de criação de tenant.
