Sobes.tech
Middle

Como pode limitar a interação entre aplicações localizadas em diferentes espaços de nomes?

sobes.tech IA

Resposta da IA

Usar Políticas de Rede.

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-from-namespace
  namespace: default # Namespace onde se encontra o serviço, cuja interação limitamos
spec:
  podSelector: {} # Aplicar a todos os pods neste namespace
  ingress:
  - from:
    - namespaceSelector:
        matchLabels:
          project: internal # Permitir tráfego apenas de namespaces com a etiqueta project: internal
    ports:
    - protocol: TCP
      port: 80 # Permitir tráfego apenas na porta 80

Outras abordagens incluem:

  • Service Mesh (Istio, Linkerd): Oferecem controle mais granular sobre o tráfego, incluindo autenticação mútua (mTLS).
  • Firewalls: Ao nível do nó (iptables) ou do provedor de nuvem.
  • Mecanismos embutidos nas aplicações: Por exemplo, autorização ao nível do API Gateway.