El modelo de perímetro trata la red interna como zona segura. Un pod comprometido accede a la base de datos, el cache y la fila de pagos. El NIST SP 800-207 define zero trust como el principio de nunca confiar y siempre verificar, independientemente de la posición en la red. Toda llamada se autentica.

mTLS como fundación

El TLS mutuo exige certificado de ambos lados de la conexión, probando identidad antes del primer byte de aplicación. La service mesh automatiza la emisión y rotación de certificados mediante identidades SPIFFE como spiffe://cluster/ns/pagamentos/sa/api. Istio y Linkerd dominan este terreno. Cilium hace el mismo trabajo sin sidecar.

Workload identity elimina la clave compartida

AWS IRSA, GCP Workload Identity Federation y Azure Managed Identities vinculan identidad cloud IAM al pod sin credencial estática, según documentado en sus respectivas páginas oficiales. La API key replicada por diez servicios en variables de entorno desaparece del inventario. Cada workload recibe identidad propia, revocable individualmente.

Capa de aplicación sobre el transporte

mTLS prueba quién está hablando en el transporte. Tokens JWT cortos firmados por request cargan intención y autorización. El flujo client credentials de OAuth2 atiende llamadas directas. Token exchange (RFC 8693) delega en cadena cuando el servicio final necesita saber qué usuario original inició la operación.

Autorización explícita

  • Inventaría el tráfico actual primero; los equipos descubren llamadas no documentadas
  • Ejecuta en modo observability registrando violaciones de política sin bloquear
  • Activa enforcement por namespace, empezando por los flujos de pago

OPA con Rego o las políticas de autorización de la propia mesh codifican qué servicio llama a qué endpoint con qué claims.

Realidades operativas

Un fallo de rotación de certificado tumba producción. El alerta sobre la salud de la rotación importa tanto como el propio mTLS. Debuggear una llamada denegada exige log de auditoría de las políticas. El overhead de latencia de la mesh queda en dígitos únicos de milisegundos. Mídelo en tu escenario antes de prometer números al cliente.

Dónde empezar

Mapea hoy qué servicios conversan directamente con la base de datos. Si la respuesta es "todos", tu superficie de ataque interna es el cluster entero. El primer namespace a migrar ya se eligió solo.