Wie verwende ich mTLS ohne Istio-Ingress und ohne Azure App Gateway-Ingress?

Wie verwende ich mTLS ohne Istio-Ingress und ohne Azure App Gateway-Ingress?

Unsere Anwendung wird im AKS-Cluster ausgeführt und wir verwenden das Cert-Manager-Helm-Diagramm in einem separaten Namespace für die Lets-Encrypt-Zertifikatgenerierung. Der Argocd-Namespace dient der Handhabung von Bereitstellungen.

Wir müssen mTLS aktivieren. Ist dafür erforderlich, dass Istio auch in den Namespaces Argocd und Cert-Manager gekennzeichnet wird?

Und wir haben bereits Azure AppGateway Ingress, um den Datenverkehr an die Bereitstellungen weiterzuleiten, die in unserem Namespace ausgeführt werden, haben also Istio Ingress nicht aktiviert.

Nachdem ich die strenge Option auf globaler Ebene aktiviert habe, funktioniert das Routing vom Azure App Gateway-Eingang zu unserer Anwendung nicht mehr.

kubectl apply -n istio-system -f - <<EOF
apiVersion: security.istio.io/v1beta1
kind: PeerAuthentication
metadata:
  name: default
spec:
  mtls:
    mode: STRICT
EOF

Und bekomme 502 Bad Gateway.

Wenn ich die obige Peer-Authentifizierung entferne oder in PERMISSIVE ändere, kann auf die Seite ohne 502-Fehler zugegriffen werden.

Was muss getan werden, um den strikten Modus ohne Istio-Ingress zu implementieren?

kubectl edit peerauthentication -n istio-system
peerauthentication.security.istio.io/default edited

verwandte Informationen