我有一个 Kubernetes 应用程序,并且正在设置 istio sidecar。是否可以使用简单的 TLS 为一部分 API 和其他 API 配置 istio MTLS?
答案 0 :(得分:1)
正如我在评论中提到的,您应该可以使用 destination rules 来做到这一点,因为您可以使用 tls settings mode 更改特定主机的 mtls。
看看下面来自 documentation 的例子:
<块引用>例如,以下规则将客户端配置为使用双向 TLS 来连接上游数据库集群。
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
name: db-mtls
spec:
host: mydbserver.prod.svc.cluster.local
trafficPolicy:
tls:
mode: MUTUAL
clientCertificate: /etc/certs/myclientcert.pem
privateKey: /etc/certs/client_private_key.pem
caCertificates: /etc/certs/rootcacerts.pem
<块引用>
以下规则将客户端配置为在与域匹配 *.foo.com 的外部服务通信时使用 TLS。
v1alpha3v1beta1
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
name: tls-foo
spec:
host: "*.foo.com"
trafficPolicy:
tls:
mode: SIMPLE
<块引用>
以下规则将客户端配置为在与评级服务交谈时使用 Istio 双向 TLS。
v1alpha3v1beta1
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
name: ratings-istio-mtls
spec:
host: ratings.prod.svc.cluster.local
trafficPolicy:
tls:
mode: ISTIO_MUTUAL