O modelo de perímetro trata a rede interna como zona segura. Um pod comprometido acessa banco de dados, cache e fila de pagamentos. O NIST SP 800-207 define zero trust como o princípio de nunca confiar e sempre verificar, independentemente da posição na rede. Toda chamada se autentica.

mTLS como fundação

TLS mútuo exige certificado dos dois lados da conexão, provando identidade antes do primeiro byte de aplicação. Service mesh automatiza emissão e rotação de certificados através de identidades SPIFFE como spiffe://cluster/ns/pagamentos/sa/api. Istio e Linkerd dominam esse terreno. Cilium faz o mesmo trabalho sem sidecar.

Workload identity elimina a chave compartilhada

AWS IRSA, GCP Workload Identity Federation e Azure Managed Identities vinculam identidade cloud IAM ao pod sem credencial estática, conforme documentado em suas respectivas páginas oficiais. A API key replicada por dez serviços em variáveis de ambiente desaparece do inventário. Cada workload recebe identidade própria, revogável individualmente.

Camada de aplicação sobre o transporte

mTLS prova quem está falando no transporte. Tokens JWT curtos assinados por requisição carregam intenção e autorização. O fluxo client credentials do OAuth2 atende chamadas diretas. Token exchange (RFC 8693) delega em cadeia quando o serviço final precisa saber qual usuário original iniciou a operação.

Autorização explícita

  • Inventarie o tráfego atual primeiro; times descobrem chamadas não documentadas
  • Rode em modo observability logando violações de política sem bloquear
  • Ative enforcement por namespace, começando pelos fluxos de pagamento

OPA com Rego ou políticas de autorização da própria mesh codificam qual serviço chama qual endpoint com quais claims.

Realidades operacionais

Falha de rotação de certificado derruba produção. Alerta sobre saúde de rotação importa tanto quanto o próprio mTLS. Debugar chamada negada exige log de auditoria das políticas. Overhead de latência da mesh fica em dígitos únicos de milissegundos. Meça no seu cenário antes de prometer números para o cliente.

Onde começar

Mapeie hoje quais serviços conversam com o banco de dados diretamente. Se a resposta for "todos", sua superfície de ataque interna é o cluster inteiro. O primeiro namespace a migrar já escolheu a si mesmo.